婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > 詳解laravel安裝使用Passport(Api認(rèn)證)

詳解laravel安裝使用Passport(Api認(rèn)證)

熱門(mén)標(biāo)簽:電信外呼系統(tǒng)多少錢(qián)一個(gè)月 代理打電話機(jī)器人 神龍斗士電話機(jī)器人 合肥企業(yè)外呼系統(tǒng)線路 企業(yè)400電話辦理多少費(fèi)用 宿州正規(guī)外呼系統(tǒng)軟件 桂陽(yáng)公司如何做地圖標(biāo)注 太原400電話申請(qǐng)流程 萍鄉(xiāng)商鋪地圖標(biāo)注

Laravel通過(guò)傳統(tǒng)的登錄表單已經(jīng)讓用戶(hù)認(rèn)證變得很簡(jiǎn)單,但是API怎么辦?API通常使用token進(jìn)行認(rèn)證并且在請(qǐng)求之間不維護(hù)session狀態(tài)。Laravel使用Laravel Passport讓API認(rèn)證變得輕而易舉,Passport基于Alex Bilbie維護(hù)的League OAuth2 server,可以在數(shù)分鐘內(nèi)為L(zhǎng)aravel應(yīng)用提供完整的OAuth2服務(wù)器實(shí)現(xiàn)。

中文文檔

http://laravelacademy.org/post/6813.html

安裝

composer require laravel/passport

接下來(lái),在配置文件 config/app.php 的providers 數(shù)組中注冊(cè) Passport 服務(wù)提供者:

Laravel\Passport\PassportServiceProvider::class,

Passport 遷移將會(huì)為應(yīng)用生成用于存放客戶(hù)端和訪問(wèn)令牌的數(shù)據(jù)表 (遷移文件位置/vendor/laravel/passport/database)

php artisan migrate

創(chuàng)建生成安全訪問(wèn)令牌時(shí)用到的加密密鑰及私人訪問(wèn)和密碼訪問(wèn)客戶(hù)端。

php artisan passport:install

Trait 添加到 App\User 模型中,這個(gè) Trait 會(huì)給這個(gè)模型提供一些輔助函數(shù),用于檢查已認(rèn)證用戶(hù)的令牌和使用作用于。

Laravel\Passport\HasApiTokens

然后在 AuthServiceProvider 的 boot 方法中添加 Passport::roues();

最后,修改文件 config/auth.php 中 api 部分的授權(quán)保護(hù)項(xiàng)( driver )改為 passport 。此調(diào)整會(huì)讓你的應(yīng)用程序在接收到 API 的授權(quán)請(qǐng)求時(shí)使用 Passport 的 TokenGuard 來(lái)處理

'guards' => [
    'web' => [
      'driver' => 'session',
      'provider' => 'users',
    ],

    'api' => [
      'driver' => 'passport',
      'provider' => 'users',
    ],
  ],

增加測(cè)試路由

Route::group(['namespace' => 'api'], function () {
  Route::post('/login', 'UserController@login');
});
Route::group(['middleware' => 'auth:api', 'namespace' => 'api'], function() {
  Route::get('V1/test/passport', 'UserController@passport');
});

增加控制器

php artisen make:controller UserController
?php

namespace App\Http\Controllers\Api;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Auth;

class UserController extends Controller
{
  public function __construct()
  {
    $this->content = array();
  }
  public function login()
  {
    // dd(request('name'));
    if(Auth::attempt(['name' => request('name'), 'password' => request('password')]))
    {
      $user = Auth::user();
      $this->content['token'] = $user->createToken('Pi App')->accessToken;
      $status = 200;
    } else {

      $this->content['error'] = "未授權(quán)";
       $status = 401;
    }
     return response()->json($this->content, $status);
  }
  public function passport()
  {
    return response()->json(['user' => Auth::user()]);
  }
}

通過(guò)postman進(jìn)行簡(jiǎn)單測(cè)試獲取token

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • laravel框架 api自定義全局異常處理方法
  • 基于laravel制作APP接口(API)
  • 詳解Laravel5.6 Passport實(shí)現(xiàn)Api接口認(rèn)證
  • 基于Laravel Auth自定義接口API用戶(hù)認(rèn)證的實(shí)現(xiàn)方法
  • laravel dingo API返回自定義錯(cuò)誤信息的實(shí)例
  • 在 Laravel 中動(dòng)態(tài)隱藏 API 字段的方法
  • Laravel如何實(shí)現(xiàn)適合Api的異常處理響應(yīng)格式

標(biāo)簽:白銀 太原 鄂州 衡陽(yáng) 廊坊 崇左 綏化 辛集

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《詳解laravel安裝使用Passport(Api認(rèn)證)》,本文關(guān)鍵詞  詳解,laravel,安裝,使用,Passport,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《詳解laravel安裝使用Passport(Api認(rèn)證)》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于詳解laravel安裝使用Passport(Api認(rèn)證)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 内丘县| 云浮市| 公主岭市| 思南县| 南充市| 湖口县| 富源县| 错那县| 长宁县| 宿州市| 忻城县| 日喀则市| 革吉县| 营山县| 华阴市| 安吉县| 新丰县| 天镇县| 南溪县| 龙井市| 洪雅县| 松潘县| 武山县| 曲沃县| 进贤县| 文安县| 乌海市| 金秀| 伊金霍洛旗| 德江县| 紫云| 高台县| 武安市| 社旗县| 观塘区| 福鼎市| 孟津县| 从化市| 温州市| 焦作市| 灵宝市|