thinkphp ajax提交token的方法介绍

不言
不言转载
2023-04-05 18:20:023010浏览

本篇文章给大家带来的内容是关于thinkphp ajax提交token的方法介绍,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

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

2975336487-5c9ade4d55004_articlex.png

然后就想到,在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{
                            //失败处理
                        }
                    }
                })
        }

这样提交的格式就完全跟表单提交一样了

1842606144-5c9adf51726b6_articlex.png

后台就可以按照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就会失效,需要在前端手动进行更改。

本篇文章到这里就已经全部结束了,更多其他精彩内容可以关注PHP中文网的PHP视频教程栏目!

以上就是thinkphp ajax提交token的方法介绍的详细内容,更多请关注php中文网其它相关文章!

声明:本文转载于:segmentfault,如有侵犯,请联系admin@php.cn删除