🌟安裝Laravel的ui套件:
composer require laravel/ui
安裝vue前端框架並預先建立好認證模板:
php artisan ui vue –auth
得到兩個資訊與一個警告:
Please run [npm install && npm run dev] to compile your fresh scaffolding.
安裝Node.js套件管理工具:
npm install
得到:zsh: command not found: npm
安裝npm(NPM 可以讓Node.js 的開發者,直接利用、擴充線上的套件庫(packages registry),加速軟體專案的開發。):
brew instal npm
再次輸入npm install即可安裝。
之後輸入:
npm run dev
是 Laravel 和其他 Web 開發框架中用於啟動前端開發模式的指令,它可以即時編譯前端資源,並開啟本地伺服器進行預覽和測試。
之後首頁右上角會出現 Log in 和 Register
🌟Passport身份驗證套件(Laravel 5.3 up):
網頁登入通常是依據Session判斷,而API通常使用Token來驗證使用者。
Laravel Passport套件可以讓我們輕易做到API身份驗證,為系統提供一個完整的OAuth2認證流程。
安裝Passport套件:
composer require laravel/passport
建立API身份驗證所需要的資料表(oauth系列表格):
php artisan migrate
建立Passport套件加密需要的公鑰(oauth-public.key)以及私鑰(oauth-private.key),用以產生安全的Token儲存於storage資料夾中:
php artisan passport:install
設定Passport:
於app\Providers\AuthServiceProvider.php增加:
use Laravel\Passport\Passport;
並於boot()方法內添加:Passport::routes();
這方法會註冊必要的路由包含核發、換發、撤銷Token以及請求客戶端的ID、Secret..的路由。
於config\auth.php中的’guards’內添加:
‘api’ => [
‘driver’ => ‘passport’,
‘provider’ =>’users’,
‘hash’ => false,
],
將api路由認證driver的值改為passport,需要認證的API請求時,系統會使用Passport的Token Guard。
Passport擁有四種不同的授權類型:1.密碼授權 2.授權碼授權(第三方身份授權 google Facebook OAuth2認證機制 取得token) 3.個人授權(於網頁上登入並產生Token) 4.同步授權(Laravel特有授權方式,會員為登入狀態下可以直接請求後端API)