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

主頁 > 知識庫 > Laravel 自帶的Auth驗證登錄方法

Laravel 自帶的Auth驗證登錄方法

熱門標簽:智能電話機器人好公司門薩維 青白江地圖標注 德陽中江如何申請400開頭電話 聊城電話外呼系統公司 AI電話機器人OEM貼牌 銅川電話機器人價格 沛縣400電話辦理 辦理重慶400電話 江蘇電商外呼系統運營商

在laravel有自帶的登錄驗證。只要建立對應的表和配置一些文件就能夠使用,無需開發者自己去實現登錄邏輯。

第一步:配置方面

在config下的auth.php配置guards 和 providers 。 之后新建文件和數據庫名稱要和這里的對應。

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

  'api' => [
   'driver' => 'token',
   'provider' => 'users',
  ],
  //Laravel Auth 驗證登錄
  'admin' => [
   'driver' => 'session',
   'provider' => 'admins',
  ]

 ],
'providers' => [
  'users' => [
   'driver' => 'eloquent',
   'model' => App\User::class,
  ],

  'admins' => [
   'driver' => 'eloquent',
   'model' => App\Admin::class,
  ],

  // 'users' => [
  //  'driver' => 'database',
  //  'table' => 'users',
  // ],
 ],

第二步:數據庫方面

1 新建admins表,作為后臺用戶表

其中remember_token 用于是否記住用戶

2 在app目錄下新建Admin.php 文件對應,文件名稱取決于配置文件中的名稱

?php
namespace App;

use Illuminate\Foundation\Auth\User as Authenticatable;

class Admin extends Authenticatable
{

 protected $fillable = [
  'username', 'password',
 ];

 protected $hidden = [ 
  //remember_token 字段用于記住我的功能
  'password', 'remember_token',
 ];

 public static $rules = [
  'username'=>'required',
  'password'=>'required'
 ];
}

第三步:控制器中auth的使用

Auth::guard('admin')->attempt($credentials)); 嘗試登錄
Auth::guard($guard)->guest();判斷用戶是否來賓,可用于中間件,判斷用戶是否登錄,返回false,則已經登錄,反之,跳轉會登錄頁面
Auth::guard($guard)->user();獲取已經登錄的用戶信息,注意在__construct()中無法獲取,可以在中間件里面獲取
?php

namespace App\Http\Middleware;

use Closure;
use Illuminate\Support\Facades\Auth;

class AdminAuthMiddleware
{
 /**
  * Handle an incoming request.
  *
  * @param \Illuminate\Http\Request $request
  * @param \Closure $next
  * @return mixed
  */
 public function handle($request, Closure $next, $guard = null)
 {
  //如果沒有指定的話,默認 guard 是 web,
  //dump(Auth::guard($guard)->check()); 判斷用戶是否認證
  //Auth::guard($guard)->user() 獲取用戶信息
  //Auth::guard($guard)->guest() 是否是來賓
 if(Auth::guard($guard)->guest()){
 if($request->ajax() || $request->wantsJson()){
 return response('Unauthorized.', 401);
 }else{
 return redirect()->guest('admin/login');
 }
 }

  return $next($request);
 }
}
 $credentials = $request->only('username', 'password');

   /**
    * 使用laravel自帶的Auth登錄
    * 1、密碼使用的是hash加密 $crypt = password_hash($password, PASSWORD_DEFAULT);
    */
   if(Auth::guard('admin')->attempt($credentials)){
    return response()->json(['code' => 200, 'msg' => '登錄成功']);
   }else{
    return response()->json(['code' => 403, 'msg' => '用戶名或密碼錯誤']);
   }

以上這篇Laravel 自帶的Auth驗證登錄方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

您可能感興趣的文章:
  • laravel 解決強制跳轉 https的問題
  • Laravel重定向,a鏈接跳轉,控制器跳轉示例
  • Laravel 5.4重新登錄實現跳轉到登錄前頁面的原理和方法
  • Laravel 微信小程序后端實現用戶登錄的示例代碼
  • laravel利用中間件防止未登錄用戶直接訪問后臺的方法
  • Laravel實現登錄跳轉功能

標簽:南寧 迪慶 山南 赤峰 鷹潭 烏魯木齊 三亞 濟寧

巨人網絡通訊聲明:本文標題《Laravel 自帶的Auth驗證登錄方法》,本文關鍵詞  Laravel,自帶,的,Auth,驗證,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Laravel 自帶的Auth驗證登錄方法》相關的同類信息!
  • 本頁收集關于Laravel 自帶的Auth驗證登錄方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 蛟河市| 玛纳斯县| 秦安县| 丹江口市| 时尚| 墨脱县| 喀什市| 扶绥县| 淳安县| 肇源县| 尼木县| 潜山县| 花莲县| 辽宁省| 儋州市| 黔江区| 沙雅县| 荃湾区| 兴安盟| 迁西县| 鄂托克旗| 开平市| 田阳县| 扶沟县| 鄂托克旗| 广东省| 定远县| 始兴县| 甘谷县| 潜山县| 沭阳县| 乐清市| 铁力市| 尤溪县| 东阳市| 兴业县| 洪湖市| 安远县| 阿合奇县| 保德县| 永州市|