今天貼吧群組的朋友遇到了這個一個問題。
他在使用ajax post 方式 提交的時候 會拋出 400
然後他在yii論壇上面找了一個解決方法
但是這個 _csrf 傳過去的是 undefined 。看到這裡我倒是知道是什麼回事了。這個jq沒找到對應的物件。
<?php echo Yii::app()->getRequest()->getCsrfToken(); ?>直接給他賦值成這個 csrf token的值。最後出現了驗證辨識的 提示
驗證錯誤了。八成不是這個參數名字。看看cookie session 裡面是否有保存這個東西。
確實在cookie 發現了這個鬼。
這個玩意我也沒怎麼玩過。改成這個 YII_CESRF_TOKEN 這個參數名稱試試。
然後點擊提交 過去了。
csrf 是yii 內建的一個防止跨域攻擊的東西。主要原理也就是給一個加密的值。首先驗證這個值是否 存在。是否正確。然後再去處理表單等操作。
以上就介紹了php yii框架 post csrf,包括了方面的內容,希望對PHP教程有興趣的朋友有幫助。