Pregunta

He creado un IHttpHandler en .NET C# que devuelve piezas de html a una página asp clásica.

El clásico de la página asp se comunica con el IHttpHandler a través de peticiones http utilizando ServerXMLHTTP en vbscript o Llamadas Ajax en JavaScript.

Ahora, necesito una manera de compartir una variable que tengo en vbscript, pero no en javascript con el .NETO de la aplicación.

El primer bit, compartiendo una variable entre asp clásico y .net no es un problema sólo puedo añadir que en la petición http.Debido a que la variable no está disponible en javascript sin embargo yo no puedo hacer esto en ese caso.

Yo tenía la idea de que yo podría tal vez la caché de la variable en el .NETO de la aplicación y el uso de la versión en caché de llamadas a funciones javascript.Pero para que esto funcione, yo necesitaría una forma de identificar de forma única el "cliente" en .NET...

He intentado añadir System.Web.SessionState.IRequiresSessionState a mi HttpHandler y utilizar el SessionId pero esto no funciona porque cada llamada a la HttpHandler parece conseguir un nuevo ID.

Estoy pensando de la manera correcta?¿Cuáles son mis opciones?

¿Fue útil?

Solución

Cómo se trata de tener una variable oculta en la página en la que puede almacenar el valor de la variable desde el lado del servidor de secuencias de comandos vb de las páginas asp.

A continuación, puede utilizar Javascript para la consulta de esta variable para enviar a través de la Asp.Net controlador a través de sus llamadas ajax.

Otros consejos

Usted podría poner su valor en una cookie, entonces usted podría leer con javascript y hacer algo con él, incluyendo el envío de una solicitud a la .net app...

Al final mi solución al problema fue el siguiente:

  1. Puedo enviar las variables para mi webservice junto con la normal ws solicitud
  2. Puedo almacenar los valores de las variables en una tabla hash en el webservice y devolver el hashkey al cliente, en un oculto de objetos de html (yo usé una cabeza <meta> elemento para que)
  3. En el javascript que he leído que el valor de hash y adjuntarlo a la http-request como un valor de encabezado.
  4. Cuando el webservice ve que hashkey él mira hasta los respectivos valores de la variable en la persistencia de la tabla hash.

Podría no ser la mejor solución, pero parece que funciona bien en mi caso...

Me gustaría recomendar una cookie.También puede cargar el valor de la base de datos, pero eso sería una exageración.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top