7

C'è uno strano comportamento del pulsante di retro che si verifica solo in Chrome.
Ho due pagine - Grid e un modulo
lo scenario:
1. Quando si passa dalla griglia al modulo, tutto va bene: la griglia viene aggiunta alla cronologia.
2. Quando il Modulo viene inviato al server tramite post, io uso RedirectToAction per reindirizzare (302) nuovamente alla Grid - il Modulo viene aggiunto alla cronologia.
3. Quando si naviga di nuovo dalla griglia al form dopo il reindirizzamento, un punto della storia che contiene l'indirizzo di rete è non è aggiunto alla storiaErrore di cronologia di Chrome forse - fare PRG, e quando si naviga di nuovo allo stesso modulo - non è stata aggiunta nessuna voce di cronologia

Ora dovete cliccare due volte sul pulsante indietro per ottenere torna alla griglia.

se si ripete tutti i passaggi più volte e guardare lo stack storia si vedrà una lista triste di voci forma senza la griglia in mezzo

modificare: ecco un link ad una pagina che dimostra il problema , aprilo in cromo e segui le istruzioni - see the Chrome history bug in action

L'unica "Soluzione" che ho trovato per questo sta mettendo alcune cazzate casuali nel link al Form, ma io davvero lo odio.

+0

Sono anche quasi sicuro che non è legato alla tecnologia server che uso. È correlato al reindirizzamento con 302 dal server e quindi torna allo stesso Url. aggiunta la parte MVC per dare contesto, supponiamo che accada anche usando RoR. –

+0

Puoi configurare un piccolo sito Web di esempio per la riproduzione? – Udi

+0

Proverò a mettere qualcosa, ora la sua profondità nella mia app –

risposta

3

Chrome utilizza severamente l'HTTP 303 See other mentre l'applicazione utilizza 302 Found per i reindirizzamenti. Vedere un bug report relativi al cromo qui: http://code.google.com/p/chromium/issues/detail?id=2801

si può votare per risolvere RedirectToAction di ASP.Net MVC qui: http://connect.microsoft.com/VisualStudio/feedback/details/706961/asp-net-mvc-controller-redirecttoaction-method-should-return-http-303-response

+0

Grazie Udi, la esamineremo –

+0

Incredibile quanto a lungo visse questo bug. purtroppo il rinvio 303 non risolve il problema di cromo –

+0

aggiungerà il 303 alla pagina di esempio, non ha accettato la tua risposta perché non ha risolto il problema del cromo e lasciandolo aperto potrebbe attirare maggiormente l'attenzione sul problema (quindi +1 e grazie per il tuo aiuto) –

Problemi correlati