Laravel用post提交表單常見的兩個錯誤


  最近在自學Laravel,測試用post方法提交表單時碰到兩個錯誤:

1、獲取傳入的值時,報錯如下圖所示:

 

在stackFlow找答案時各種解釋都有,但認真讀一下報錯信息,意思大概是:獲取Http傳入值方式不允許,檢查代碼,將偷懶寫的:

1 Route::get('test',function(){
2     //
3 });

  改為用post方法或者any方法接收即可:

1 Route::post('test',function(){
2     //
3 });

 

2、提交表單時,第二個報錯信息如下圖所示:

 

  這個報錯出現在於Laravel框架為了防止跨域請求攻擊(CSRF)而為用戶生成的隨機令牌,post請求如果沒有驗證token,就出現上圖的報錯信息。解決方法:在form表單中添加一個隱藏域,攜帶token參數即可:

1 <form action="user" method="post">
2     <input type="hidden" name="_token" value="{{csrf_token()}}">
3     用戶名:<input type="text" name="username">
4     密碼:<input type="password" name="pwd">
5     <input type="submit" value="提交">
6 </form>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM