天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

ThinkPHP 防止表單重復提交的方法

然而有一種情況,是防止不了的:

用戶提交表單以后,點擊瀏覽器后退按鈕返回表單頁面,這個時候瀏覽器會直接從緩存中取出頁面,因此token驗證一定是通不過的。

網上有許多種辦法可以繞過這個問題,比如用location.replace()方法來替換當前歷史記錄,但是這樣仍然有瑕疵。極端的情況,若用戶在頁面間切換多次,那么多點幾次后退按鈕很可能又回到了上一個表單頁面。

解決辦法是在http頭中設置Cache-Control: no-cache, no-store。然而我嘗試了無論是在頁面head中添加 <meta http-equiv="Cache-Control" content="no-cache, no-store"> 還是在Action中輸出 header("Cache-control: no-cache, no-store") 都無效。

查找了很久,發現問題出在Thinkphp的模板渲染機制上,打開 Thinkphp/Lib/Think/Core/View.class.php 看第173行

header("Cache-control: private");  //支持頁面回跳

原來TP為了支持頁面回跳,強制在每個模板輸出之前都發送了一個Cache-control: private的頭,這可真是幫了倒忙了。

把這行注釋掉,刪除TP核心緩存,再試一次,發現HTTP響應頭成功改變了

php技術ThinkPHP 防止表單重復提交的方法,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产电影尺度 | 午夜影院视费x看 | 摸董事长的裤裆恋老小说 | 久久综合一个色综合网 | 在线播放性xxx欧美 在线播放午夜理论片 | 成年妇女免费播放 | 92精品国产成人观看免费 | 国产互换后人妻的疯狂VIDEO | av亚洲2017色天堂 | 九九大香尹人视频免费 | 亚洲性爱城| 老太脱裤子让老头玩xxxxx | 欧美阿v天堂视频在99线 | 在线观看视频国产 | 巨胸美乳中文在线观看 | 狠狠色狠狠色综合曰曰 | 国内精品久久久久久久999下 | 色噜噜噜亚洲男人的天堂 | 国产欧美无码亚洲 | 亚洲日本欧美日韩高观看 | 99热热在线精品久久 | 午夜色网站 | 国产片MV在线观看 | 嗯啊好爽视频 | 第一次玩老妇真实经历 | 日日操夜夜操狠狠操 | 色视频色露露永久免费观看 | 国产哺乳期奶水avav | 麻豆XXXX乱女少妇精品-百度 | 在线视频 中文字幕 | 岛国大片在线播放免费 | 久久久久婷婷国产综合青草 | 亚洲影院在线播放 | 啊好深啊别拔就射在里面 | 一二三四在线播放免费观看中文版视频 | 亚洲精品无码国产爽快A片百度 | MM131亚洲精品久久安然 | 国内精品久久 | 亚洲精品嫩草研究院久久 | 国产精品久久毛片A片软件爽爽 | 理论片87福利理论电影 |