ThinkPHP5表单令牌刷新

制作登录页面的时候,加入了表单令牌,账号和密码输入错误后,再登录的话,会提示表单令牌错误,
这是因为旧的令牌已经过期了,我们要处理下前端的token,修复的办法,在路由文件下加入

//刷新表单令牌,然后前端提交表单后,js调用,这里的我用的是__token__
Route::get('refresh/token',function(){
    return json(['token'=>request()->token('__token__', 'sha1')]);
});

在.html文件加入隐藏域
<input type="hidden" name="__token__" value="{$Request.token}" />

然后前端表单提交后,js调用后端方法去修改token

//页面局部token刷新
    function refresh()
    {
        $.get("{:url('@refresh/token')}", function(res){
            $("[name='__token__']").val(res.token);
        });
}
posted @ 2021-01-15 18:24  爱时尚疯了的朱  阅读(404)  评论(0编辑  收藏  举报