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

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

主站蜘蛛池模板: 高清mv视频免费观看 | 国产精品日本欧美一区二区 | 精品一产品大全 | 入禽太深免费观看 | 粉嫩国产14xxxxx0000 | 老鸭窝毛片 | 亚洲日本欧美日韩高观看 | 日韩精品亚洲专区在线电影不卡 | 视频一区国产 | 扒开她的黑森林让我添动态图 | 亚洲精品国产乱码AV在线观看 | 背着老婆爆操性感小姨子 | 亚洲永久精品ww47 | 四虎免费影院 | 日韩欧美一区二区三区免费看 | 亚洲久热无码中文字幕 | 无码一区二区在线欧洲 | 成人毛片免费播放 | 中文字幕亚洲无线码在线 | 免费完整版观看 | 最新国自产拍天天更新 | 久久国产精品永久免费网站 | 欧美123区 | 亚洲免费三级电影 | 久久99精品国产麻豆婷婷 | 东京热百度影音 | 色欲人妻AAAAAAA无码 | 无码人妻精品一区二区蜜桃色 | 乱码国产丰满人妻WWW | 快插我我好湿啊公交车上做 | 曰批国产精品视频免费观看 | 日韩一卡二卡三卡四卡免费观在线 | 久久亚洲精品AV成人无码 | 国产乱妇乱子在线播视频播放网站 | 日日撸影院在线 | 亚洲国产精品无码中文字满 | 日本 一二三 不卡 免费 | 99午夜高清在线视频在观看 | 97在线观看免费 | 强被迫伦姧惨叫VIDEO | 午夜精品久久久久久久爽牛战 |