thinkphp ajax提交token

31次阅读

共计 664 个字符,预计需要花费 2 分钟才能阅读完成。

忘记密码的时候需要用到 ajax 提交,怕短信被盗刷,用的 thinkphp 自带的 token 做了个简单的验证(结合验证码)。看到表单里的 token 其实是跟表单数据一起验证的,其实就相当于表单里的一个字段。

然后就想到,在 ajax 中 token 跟其他字段一起提交就行了。
function setCodeAjax(){
var mobile = $(“[name=’phone’]”).val();
var token = $(“[name=’__token__’]”).val();
$.ajax({
data:{‘mobile’:mobile,’__token__’:token},
dataType:’json’,
type:’post’,
url:”XXX”,
success:function (d) {
if(d.code == 0){
// 成功处理
}else{
// 失败处理
}
}
})
}
这样提交的格式就完全跟表单提交一样了

后台就可以按照 tp 手册上的验证来验证了。
例如:
$validate = Validate::make([
‘mobile’ => ‘require|token’
]);

$data = $this->request->post();
$result = $validate->check($data);
if ($result != true) {
return _codeMsg(‘1001’,$result);
}

// 后续处理
不过用 ajax 做验证,需要注意,如果 token 已经提交进行过验证,那么这个 token 就会失效,需要在前端手动进行更改。
第一次写文章,先写个简单的练练手(好紧张~~)

正文完
 0