Ho trovato la soluzione alternativa successiva. È possibile evitare il reindirizzamento dopo l'elaborazione della POSTrichiesta manipolando l' historyoggetto.
Quindi hai il modulo HTML:
<form method=POST action='/process.php'>
<input type=submit value=OK>
</form>
Quando elabori questo modulo sul tuo server invece di reindirizzare l'utente /the/result/pageimpostando l' Locationintestazione in questo modo:
$cat process.php
<?php
process POST data here
...
header('Location: /the/result/page');
exit();
?>

Dopo aver elaborato i POSTdati renderli piccoli <script>e il risultato/the/result/page
<?php
process POST data here
render the <script> // see below
render `/the/result/page` // OK
?>
La <script>si dovrebbe render:
<script>
window.onload = function() {
history.replaceState("", "", "/the/result/page");
}
</script>
Il risultato è:

come puoi vedere, i dati del modulo vengono modificati POSTnello process.phpscript.
Questo script ha elaborato i POSTdati e il rendering /the/result/pagecontemporaneamente con:
- nessun reindirizzamento
- nessun
POSTdato relativo all'aggiornamento della pagina (F5)
- no
POSTquando si passa alla pagina precedente / successiva attraverso la cronologia del browser
UPD
Come altra soluzione, chiedo alla funzione di richiedere al team Mozilla FireFox di consentire agli utenti di impostare l' NextPageintestazione che funzionerà come Locationintestazione e renderà post/redirect/getobsoleto lo schema.
In breve. Quando il server elabora POSTcorrettamente i dati del modulo :
- Imposta
NextPageintestazione invece diLocation
- Rendering del risultato dell'elaborazione dei
POSTdati del modulo come verrebbe visualizzato per la GETrichiesta nel post/redirect/getmodello
Il browser a sua volta quando vedi l' NextPageintestazione:
- Regola
window.locationcon NextPagevalore
- Quando l'utente aggiorna la pagina, il browser negozia la
GETrichiesta NextPageanziché riformulare i POSTdati
Penso che questo sarebbe eccellente se implementato, no? =)