使用API登录认证是需要获取访问令牌,方法为:
参数:
- grant_type —— 密码模式固定为
password
; - client_id —— 通过
passport:client
创建的客户端id
; - client_secret —— 通过
passport:client
创建的客户端secret
; - username —— 登录的用户名,数据库中任意用户邮箱;
- password —— 用户密码;
- scope —— 作用域,可填写
*
或者为空;
需要这几个参数就可以获取到token
今天遇到一个问题是,token失效,需要重置,在laravel中
运行 passport:install
命令来创建生成安全访问令牌时所需的加密密钥,同时,这条命令也会创建用于生成访问令牌的「个人访问」客户端和「密码授权」客户端:php artisan passport:install
运行那个命令会生成两个文件和两条数据库记录:
这两个文件和两条记录是一一对应的
一个是个人访问客户端,一个是密码授权客户端。
当进行重置的时候,务必保证这四个东西没有变动,与当时生成的时候一致。
刷新访问令牌
刷新访问令牌
接口与 获取访问令牌
接口一样,只是参数不同。
- grant_type —— 刷新令牌固定为
refresh_token
; - client_id —— 通过
passport:client
创建的客户端id
; - client_secret —— 通过
passport:client
创建的客户端secret
; - refresh_token —— 刷新令牌;
- scope —— 作用域,可填写
*
或者为空;