天天躁日日躁狠狠躁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 防止表單重復提交的方法,轉載需保留來源!

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

主站蜘蛛池模板: 亚洲国产在线99视频 | 国内久经典AAAAA片 | 暖暖 视频 在线 观看 高清 | 国产在线播放精品视频 | 日本污ww视频网站 | 日本人添下面的全过程 | 精品国产国产精2020久久日 | 曰本少妇高潮久久久久久 | 亚洲日韩视频免费观看 | 黄子佼81岁父亲现状曝光 | 果冻传媒在线完整免费播放 | 欧美成人免费观看久久 | 俺来也俺去也视频久久 | 久久精品一区二区免费看 | 亚洲 自拍 清纯 综合图区 | 成人做视频免费 | 国产精品成人免费 | 果冻传媒在线观看完整版免费 | 亚洲中文久久精品AV无码 | 国产精品一区二区20P | 毛片免费观看视频 | 粗壮挺进邻居人妻无码 | 久久理伦片琪琪电影院 | 4484在线观看视频 | 9420高清完整版在线电影免费观看 | 无码AV精品一区二区三区 | 白丝萝莉喷水 | 久久成人精品免费播放 | 国内精自品线一区91 | 91精品免费久久久久久久久 | 娇小萝被两个黑人用半米长 | 国精品产露脸偷拍视频 | 91国在线啪精品一区 | 天天啪免费视频在线看 | 女女破视频在线观看 | 国产成人在线免费观看 | 国产人妻人伦精品59HHH | 亚洲九九精品 | 超嫩校花被灌醉在线观看 | 出租屋自拍贵在真实15P | 色多多旧版污污破解版 |