Botón de retroceso y reenvío de IE6
-
20-08-2019 - |
Pregunta
Mi sitio web es un sitio web asp.net-mvc (beta1), completamente valida y funciona en todos los navegadores (excepto obviamente en IE6 para este asunto).
Puedo reproducir el error haciendo lo siguiente:
- Realizar una solicitud POST con algunos parámetros
- De los resultados, haga clic en uno de los enlaces GET generados
- Al presionar & "; BACK &"; botón de la página resultante.
A veces, el botón Atrás no hace nada (la página de la última solicitud permanece en la pantalla, el estado dice " Hecho ")
A veces se muestra una página completamente vacía con la URL correcta y el & Quot; Hecho & Quot; estado
A veces, la página res: //ieframe.dll/repost.htm se muestra con & Quot; No se puede encontrar el servidor & Quot; título.
Todavía no he encontrado el factor desencadenante ...
Supongo que IE no está almacenando en caché nada allí, por lo que volverá a publicar la url. Sin embargo, nada parece estar afectando mi controlador.
¿Qué está pasando? ¿Cómo puedo comenzar a depurar esto o incluso mejor: arreglar esto?
Solución
Implemente POST + REDIRECT + GET ?
Otros consejos
IE no volverá a publicar sin preguntar al usuario. Si IE no está almacenando en caché la página de resultados (verifique qué encabezados de caché lo está enviando), debería recibir el mensaje de reenvío. No sé por qué obtendrías 'Servidor no encontrado', parece una instalación de IE confusa. (¿Es una configuración de IE múltiple?)
Como mencionó cletus, post-redirect-get es generalmente deseable para formularios de publicación exitosos.
Para analizar el tráfico entre el navegador y el servidor, debe poner Fiddler en bewteen.
De esta forma descubrirá si IE6 envía alguna solicitud al servidor al presionar el botón Atrás.