আমি পরবর্তী কাজ খুঁজে পেয়েছি। আপনি পুনর্নির্দেশটি অবজেক্টটি POST
ম্যানিপুলেট করে অনুরোধ প্রক্রিয়া করার পরে এড়াতে পারেন history
।
সুতরাং আপনার এইচটিএমএল ফর্ম রয়েছে:
<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
ed ডেটা এবং রেন্ডারিং /the/result/page
একবারে সঙ্গে
- কোনও পুনঃনির্দেশ
POST
আপনি পৃষ্ঠা রিফ্রেশ করার সময় কোনও পুনরায় ডেটা নেই (F5)
POST
যখন আপনি ব্রাউজারের ইতিহাসের মাধ্যমে পূর্ববর্তী / পরবর্তী পৃষ্ঠায় নেভিগেট করেন তখন পুনরায় নেই
UPD
অন্য সমাধান হিসাবে আমি জিজ্ঞাসা বৈশিষ্ট্য অনুরোধ মোজিলা ফায়ারফক্স সেটআপ করার জন্য ব্যবহারকারীদের অনুমতি দল NextPage
হেডার যা মত কাজ করবেLocation
হেডার এবং করতে post/redirect/get
প্যাটার্ন অপ্রচলিত।
সংক্ষেপে. সার্ভার প্রক্রিয়া POST
তথ্য সাফল্যের সাথে এটি ফর্ম যখন :
- এর
NextPage
পরিবর্তে শিরোনাম সেটআপ করুনLocation
- প্রক্রিয়াকরণ ফল রেন্ডার
POST
ফর্ম তথ্য যেমন জন্য রেন্ডার হবে GET
অনুরোধ post/redirect/get
প্যাটার্ন
ব্রাউজারটি যখন NextPage
শিরোনামটি দেখবে :
- সামঞ্জস্যবিধান
window.location
সঙ্গেNextPage
মান
- ব্যবহারকারী পৃষ্ঠাটি রিফ্রেশ করার সময় ব্রাউজারটি পুনরায় ডেটা ফর্মের পরিবর্তে
GET
অনুরোধটি আলোচনা করবেNextPage
POST
আমি মনে করি এটি বাস্তবায়িত হলে দুর্দান্ত হবে, না? =)