Pregunta

He actualizado recientemente una página en nuestro servidor desde ASP clásico a asp.net

La página recieves postdata y lo guarda en un archivo. La página es utilizada por muchos de nuestros clientes y la url (a la página ASP) está codificado en su software. Esto significa que no puedo simplemente cambiar la página antigua por la nueva. Estoy tratando de encontrar una manera de redirigir los clientes de la antigua URL a la nueva. Sé que usted puede hacer una redirección simple usando IIS, pero esto no hace que el postdata a ser redirigido. He tratado de establecer el archivo a una redirección temporal 307, esto funciona cuando los datos están en las peticiones POST FormData pero otros, como los que utilizan la biblioteca msxml no funcionan.

Básicamente tengo que encontrar una manera en IIS para reenviar una solicitud posterior de una página a otra sin perder nada del cuerpo.

¿Fue útil?

Solución 2

La mejor manera que encontré fue utilizar el código de redirección temporal en IIS, aunque esto no funcionó para Postdatum procedentes de la biblioteca msxml. En el final que tenía que escribir una biblioteca COM en .NET para hacer el trabajo duro usando las bibliotecas system.encoding y después hacer referencia a la biblioteca COM en ASP

Otros consejos

Si las dos páginas están dentro de la misma aplicación, puede utilizar Server.Transfer. Esto sólo cambia el procesamiento de la antigua página a la nueva, y mantiene todos los datos de la solicitud.

Puede programar siempre (en Asp.old) un bucle que pasa por todas las form-data e insertar un registro con todos los valores en la base de datos. A continuación, redirigir al usuario a la página aspx-con el id de la fila en la base de datos como un parámetro de cadena de consulta. Tenga cuidado si la forma-datos son sensibles, aplicar algún tipo de seguridad para asegurarse de que los usuarios de costumbre "roban" otros datos cambiando la cadena de consulta.

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