Laravel8 快速入门教程十八 - 用户登录 JWT 配置

87 阅读2分钟

本文由 简悦 SimpRead 转码, 原文地址 juejin.cn

「这是我参与 11 月更文挑战的第 9 天,活动详情查看:2021 最后一次更文挑战

背景

  1. 项目用 Thinkphp5.1 开发完成,对于各种关系模型的查询 Tp 处理起来还是比较吃力的。
  2. 作为努力奔跑的程序员,下一个项目我们决定用 Lavarel 进行开发。
  3. 因为掘金粑粑有奖励,所以把部分 gitee 上的私有的部分学习笔记整理一下。

说明

Laravel 属于中大型框架,各种功能都被内置了,而且 Laravel 官方的文档看的我是云里雾里的,对于新手感觉不是很友好。所以此系列文章只适合有 PHP 基础。想快速入门搞开发的

正文

上一篇文章我们安装完成 JWT。这里我们对 JWT 进行配置。

快速开始

具体的文档位置在这里,可以区查阅 jwt-auth.readthedocs.io/en/develop/

  1. 配置模型 Update your User model

app\Models\User.php 是自带的用户模型,基于这个模型做登录操作。

模型实现接口

  1. 更新权限 guard 文件 Laravel 已经封装了权限的方法 配置在 config\auth.php 文件中。

因为目前我对 Laravel 实现权限的方式还不是很了解,所以这里我只是照葫芦画瓢先配置了。后续用多了才能理解吧。 下面是个简单的图,帮助理解的。我就直接贴我的配置了。

<?php

return [
    'defaults' => [
        'guard' => 'api',  //默认的guiard
        'passwords' => 'users',
    ],
    'guards' => [
        'web' => [
            'driver' => 'session',
            'provider' => 'users',
        ],
        'api' => [   //配置 api guards
            'driver' => 'jwt',
            'provider' => 'users',
        ],
    ],
    'providers' => [
        'users' => [
            'driver' => 'eloquent',
            'model' => App\Models\User::class,
        ],

        // 'users' => [
        //     'driver' => 'database',
        //     'table' => 'users',
        // ],
    ],
    'passwords' => [
        'users' => [
            'provider' => 'users',
            'table' => 'password_resets',
            'expire' => 60,
            'throttle' => 60,
        ],
    ],
    'password_timeout' => 10800,
];

复制代码

  1. 登录接口获取 token【就相当于登录的操作】,然后在每一个需要登录才能获取数据的接口携带上 token 就可以正常获取到想要的数据了。

【总结】 我们能获取 token 了。但是登录验证方法并没有去完成,所以我们下面会完成登录的操作。并在后续会用到这里获取到的 token。