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

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

主站蜘蛛池模板: 久久精品国产午夜伦班片 | 德国xxxx | 抽插内射高潮呻吟V杜V | 日韩在线视频www色 日韩在线看片中文字幕不卡 | 日本 一二三 不卡 免费 | 视频一区亚洲中文字幕 | 毛片在线看片 | 内射一区二区精品视频在线观看 | 精品日韩二区三区精品视频 | 国产成人一区二区三区在线观看 | 甜性涩爱在线播放 | 先锋影音 av | 亚洲一区精品在线 | 色小姐.com | 亚洲AV一宅男色影视 | 日本不卡一二三 | 蜜臀久久99精品久久久久久做爰 | 伊人久久大香线蕉综合电影网 | 晚夜免费禁用十大亏亏 | 成人在线不卡视频 | 久久久久久久网站 | 越南女 黑人 痛苦 大叫 | 亚洲精品久久AV无码蜜桃 | 永久免费精品影视网站 | 试看做受120秒免费午夜剧场 | 久久这里都是精品 | 亚洲中文字幕乱码熟女在线 | 日本精品久久久久中文字幕2 | 年轻的搜子8中字在线观看 年轻的朋友4在线看中文字幕 | 国产午夜AV无码无片久久96 | 久久久久久久尹人综合网亚洲 | 日本VA在线视频播放 | 出轨的妻子在线观看 | 国内精品蜜汁乔依琳视频 | 亚洲色图激情小说 | 噼里啪啦免费观看视频大全 | 古代荡女丫鬟高H辣文纯肉 姑娘视频日本在线播放 | 欧美牲交A欧美牲交 | 亚州视频一区 | 海量激情文学 | 久久精品手机观看 |