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

376 阅读2分钟

「这是我参与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 是自带的用户模型,基于这个模型做登录操作。

模型实现接口

image.png

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

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

<?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就可以正常获取到想要的数据了。

image.png

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