- Laravel 教程
- Laravel - 首頁
- Laravel - 概述
- Laravel - 安裝
- Laravel - 應用結構
- Laravel - 配置
- Laravel - 路由
- Laravel - 中介軟體
- Laravel - 名稱空間
- Laravel - 控制器
- Laravel - 請求
- Laravel - Cookie
- Laravel - 響應
- Laravel - 檢視
- Laravel - Blade 模板
- Laravel - 重定向
- Laravel - 資料庫操作
- Laravel - 錯誤與日誌
- Laravel - 表單
- Laravel - 本地化
- Laravel - 會話
- Laravel - 驗證
- Laravel - 檔案上傳
- Laravel - 傳送郵件
- Laravel - Ajax
- Laravel - 錯誤處理
- Laravel - 事件處理
- Laravel - Facades
- Laravel - Contracts
- Laravel - CSRF 保護
- Laravel - 身份驗證
- Laravel - 授權
- Laravel - Artisan 控制檯
- Laravel - 加密
- Laravel - 雜湊
- 理解發布流程
- Laravel - 客人使用者許可權
- Laravel - Artisan 命令
- Laravel - 分頁自定義
- Laravel - Dump Server
- Laravel - 操作 URL
- Laravel 有用資源
- Laravel - 快速指南
- Laravel - 有用資源
- Laravel - 討論
Laravel - 身份驗證
身份驗證是識別使用者憑據的過程。在 Web 應用中,身份驗證由會話管理,會話獲取諸如電子郵件或使用者名稱和密碼之類的輸入引數,用於使用者識別。如果這些引數匹配,則認為使用者已透過身份驗證。
命令
Laravel 使用以下命令建立表單以及相關的控制器來執行身份驗證:
php artisan make:auth
此命令有助於成功建立身份驗證腳手架,如下面的螢幕截圖所示:
控制器
用於身份驗證過程的控制器是HomeController。
<?php
namespace App\Http\Controllers;
use App\Http\Requests;
use Illuminate\Http\Request;
class HomeController extends Controller{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct() {
$this->middleware('auth');
}
/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function index() {
return view('home');
}
}
因此,生成的腳手架應用程式建立了登入頁面和註冊頁面以執行身份驗證。它們如下所示:
登入
註冊
手動驗證使用者
Laravel 使用Auth外觀,它有助於手動驗證使用者。它包括attempt方法來驗證其電子郵件和密碼。
考慮以下LoginController的程式碼行,其中包含所有身份驗證功能:
<?php
// Authentication mechanism
namespace App\Http\Controllers;
use Illuminate\Support\Facades\Auth;
class LoginController extends Controller{
/**
* Handling authentication request
*
* @return Response
*/
public function authenticate() {
if (Auth::attempt(['email' => $email, 'password' => $password])) {
// Authentication passed...
return redirect()->intended('dashboard');
}
}
}
廣告