मुझे अगला वर्कअराउंड मिला। POSTहेरफेर करके प्रसंस्करण अनुरोध के बाद आप पुनर्निर्देशन से बच सकते हैंhistory ऑब्जेक्ट में ।
तो आपके पास HTML फॉर्म है:
<form method=POST action='/process.php'>
<input type=submit value=OK>
</form>
जब आप इस फ़ॉर्म को अपने सर्वर पर संसाधित करते हैं तो आप उपयोगकर्ता को इस तरह हेडर /the/result/pageसेट करके पुनर्निर्देशित करने के बजाय Locationकरेंगे:
$cat process.php
<?php
process POST data here
...
header('Location: /the/result/page');
exit();
?>

POSTएड डेटा को संसाधित करने के बाद आप छोटे <script>और परिणाम प्रस्तुत करते हैं/the/result/page
<?php
process POST data here
render the <script> // see below
render `/the/result/page` // OK
?>
<script>आप प्रस्तुत करना चाहिए:
<script>
window.onload = function() {
history.replaceState("", "", "/the/result/page");
}
</script>
परिणाम है:

जैसा कि आप देख सकते हैं कि फॉर्म स्क्रिप्ट में POSTएड डेटा है process.php।
यह स्क्रिप्ट प्रक्रिया POSTडेटा और रेंडरिंग /the/result/pageको एक साथ प्रोसेस करती है :
- कोई पुनर्निर्देशन नहीं
- नही रे
POSTजब आप पृष्ठ (F5) को रिफ्रेश करते हैं, तो डेटा
POSTजब आप ब्राउज़र इतिहास के माध्यम से पिछले / अगले पृष्ठ पर जाते हैं, तो कोई पुनः नहीं
युपीडी
एक अन्य समाधान के रूप में, मैं उपयोगकर्ताओं से हेडर सेटअप करने और बनाने के लिए काम करने की अनुमति देने के लिए मोज़िला फ़ायरफ़ॉक्स टीम से फ़ीचर अनुरोध करने के लिए कहता हूँNextPageLocationpost/redirect/get पैटर्न अप्रचलित।
संक्षेप में। जब सर्वर प्रक्रिया POSTडेटा को सफलतापूर्वक बनाती है:
- सेट अप
NextPage बजाय हैडरLocation
- प्रोसेसिंग
POSTफॉर्म डेटा के परिणाम को रेंडर करें क्योंकि यह पैटर्न GETमें अनुरोध के लिए प्रस्तुत करेगाpost/redirect/get
NextPageहेडर को देखने पर बदले में ब्राउज़र :
- के
window.locationसाथ समायोजित करेंNextPageमूल्य के
- जब उपयोगकर्ता पृष्ठ को रीफ़्रेश करता है तो ब्राउज़र पुनः फॉर्म डेटा के बजाय
GETअनुरोध पर बातचीत करेगाNextPagePOST
मुझे लगता है कि अगर इसे लागू किया जाता है, तो यह बहुत अच्छा होगा? =)