laravel5 內建的登入驗證應該如何POST

來源:互聯網
上載者:User
laravel5 本身就帶有登入驗證,比如開啟 localhost/home 會自動跳轉到 localhost/auth/login 如果我想在用戶端中POST 一個請求到 localhost/auth/login 應該如何發呢,POST的body裡要不要是不是要寫上很多東西,包括email,password,_token呢 另外,登入成功或者失敗了能否返回一個自訂字串提示成功或失敗了,現在內建的都是redirect的。 新手求指點

回複內容:

laravel5 本身就帶有登入驗證,比如開啟 localhost/home 會自動跳轉到 localhost/auth/login 如果我想在用戶端中POST 一個請求到 localhost/auth/login 應該如何發呢,POST的body裡要不要是不是要寫上很多東西,包括email,password,_token呢 另外,登入成功或者失敗了能否返回一個自訂字串提示成功或失敗了,現在內建的都是redirect的。 新手求指點

可以在HomeController重新定義postLogin方法
laravel5 預設的postLogin只是最基本的例子,如果能用上,那是最好了,基本上只能用作參考,正式開發中肯定有很多例外

預設的postLogin方法在
AuthenticatesAndRegistersUsers這個trait中實現
包括登陸,註冊,登出等

  1. Laravel 對於表單的實現是 _token(csrf_token) + _method (post|put|patch|head|get|) + body

  2. Laravel 所有 view 都可以直接存取一個$errors(執行個體) 可以通過 $error->has() 判斷有沒有錯誤 $errors->all() 提取所有錯誤內容 錯誤的實現機制是 flash session 所以無論是 return redirect 還是 return view 都可以訪問到 $erorrs

  3. 建議研讀 https://laracasts.com/series/laravel-5-fundamentals 你就通透了

@if (count($errors) > 0)            
  
    @foreach ($errors->all() as $error)
  • {{ $error }}
  • @endforeach
@endif

你可以把這個複製到模板裡面觀察一下

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.