溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

thinkphp ajax如何提交token

發(fā)布時(shí)間:2020-10-28 14:09:28 來源:億速云 閱讀:211 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關(guān)thinkphp ajax如何提交token 的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過來看看吧。

忘記密碼的時(shí)候需要用到ajax提交,怕短信被盜刷,用的thinkphp自帶的token做了個(gè)簡單的驗(yàn)證(結(jié)合驗(yàn)證碼)。
看到表單里的token其實(shí)是跟表單數(shù)據(jù)一起驗(yàn)證的,其實(shí)就相當(dāng)于表單里的一個(gè)字段。

thinkphp ajax如何提交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{
                            //失敗處理
                        }
                    }
                })
        }

這樣提交的格式就完全跟表單提交一樣了

thinkphp ajax如何提交token

后臺就可以按照tp手冊上的驗(yàn)證來驗(yàn)證了。

例如:

        $validate = Validate::make([
            'mobile'  => 'require|token'
        ]);

        $data = $this->request->post();
        $result = $validate->check($data);
        if ($result != true) {
            return _codeMsg('1001',$result);
        }
        
        //后續(xù)處理

不過用ajax做驗(yàn)證,需要注意,如果token已經(jīng)提交進(jìn)行過驗(yàn)證,那么這個(gè)token就會失效,需要在前端手動進(jìn)行更改。

感謝各位的閱讀!關(guān)于thinkphp ajax如何提交token 就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI