博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在laravel中配置及测试passport
阅读量:5912 次
发布时间:2019-06-19

本文共 3485 字,大约阅读时间需要 11 分钟。

配置Passport

1.首先使用composer安装passport

composer require laravel/passport

2.注册服务提供者

进入config/app.php中,将下面行添加到providers数组中

/* * Package Service Providers... */ Laravel\Passport\PassportServiceProvider::class,

3.在App\User模型中的use后面添加HasApiTokens

class User extends Authenticatable{    use HasApiTokens, Notifiable;}

4.在AuthServiceProviderboot方法中调用

// 配置passport路由Passport::routes();// 或者使用下面这行给URI添加前辍//Passport::routes(null,['prefix'=>'api/oauth']);// token的有效期时长:2小时Passport::tokensExpireIn(Carbon::now()->addHour(2));// refresh token的有效期时长:7天Passport::refreshTokensExpireIn(Carbon::now()->addDay(7));

5.将config/auth.php的配置文件的guards/api/driver修改为passport

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

6.在服务器中执行数据填充

php artisan migrate

7.生成密钥

php artisan passport:install

执行上述命令会生成类似的密钥

Personal access client created successfully.Client ID: 1Client Secret: Fo6GS5UyNuCIeZtBhIUzA9W99sonUoZNo26Zi67tPassword grant client created successfully.Client ID: 2Client Secret: kCvv28qy25rIw5IYvAwpIHNQvBMnH6FElrzxqvqP

简单的配置就些完成。

测试上述配置

打开Postman或者类似的工具

  • 方法为POST

  • 链接为,(假如你使用了URI的前辍,则要在你的URI前加上你自定义的那个前辍)

  • 在表单数据中添加以下项

key value
client_id 这里使用的是生成密钥里的clientid值
client_secret 这个是上面ID对应的secret
username users表里用于登录的用户名,默认为邮箱,除非你修改过默认值
password 用户登录对应的密码
grant_type password(oauth2有多种类型,我这里使用密码验证类型测试)

下面附一个演示的数据,不要照抄,只作参考

key value
client_id 2
client_secret kCvv28qy25rIw5IYvAwpIHNQvBMnH6FElrzxqvqP
username aaa@test.com
password 123456
grant_type password

填好上面内容后,点Send,服务器返回一个json数据就表示Passport配置成功了

{    "token_type": "Bearer",    "expires_in": 7200,    "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImUxNGUyZDFmNjUwYzJiMzgwYWVhZjVjNzI5NWFhNjI4ZjM4MjRmOTJhYzNhMmFiY2VkZmQyYmI2OWQ0ZWQ0NjFlOGUwZTI4Njk2NWIzN2ZmIn0.eyJhdWQiOiIyIiwianRpIjoiZTE0ZTJkMWY2NTBjMmIzODBhZWFmNWM3Mjk1YWE2MjhmMzgyNGY5MmFjM2EyYWJjZWRmZDJiYjY5ZDRlZDQ2MWU4ZTBlMjg2OTY1YjM3ZmYiLCJpYXQiOjE1MTAzMzIwNDksIm5iZiI6MTUxMDMzMjA0OSwiZXhwIjoxNTEwMzM5MjQ5LCJzdWIiOiIxIiwic2NvcGVzIjpbXX0.czFKBMcqXWhv6JXD_1bhAn2h0cZ1v4KOZWP8c2UOQ3_Y0-a0w-63Qa4jGOCU01dyB5_9e6eEJeaNpDkxN-iezlJbQ37gMjg_x4GbT-Zy1XuYSfqtRQPd3IO3jnnEtFvVLdcaqG4a5z5I9QEKtSjP8UYFV-gPv4Y-vMg29xPga0cIT9bxHnyTWvfjmUfNw_S6pZ2QAnr4jRJSgGgMksNKeo2qRgmpxOYD5LSPO-ZLYY0QhB6TuPZDmO_1s6L7rMQN4p3rlv36E3eIPw8AuK1aXPy5c2_iN4fzdkKKtsHhm6dl5MjnbomKLbVCnYaqWNOSz5ru2zztnUysBi6J_s4qwW89w0DQahl4sLx1qXx90JHdi057d6L4_AqTbFvBtRY_e5IyKNfG1Q3iZS_8ZMRP2TAEsnCiHO3Mv-RRRzunUAE3nzy-6Uu30yj01_dgowLmcuj6RLElsCfOgDAGmLlHdXzDXn-ECzhZEVSuwRqLYqoDiw95WzOSKteemvsWmUqnoLyaXKu_uAjhLb6eKVSdOIBLFb1z-3XQjIx2FhTGJxDhZShDQ9V3Dx_XdiJO6gsdgBsuJyaxLv-SDrU7SQ3LmZxn854DCYXTblUBXyUfbRtu5CGyI2kaV9DyPMqxrAPEYLmTL6WG1J0foTNAOOwWx6nEuDnq18oVALojqsMaNfM",    "refresh_token": "def50200344953b3f39ad35917ff6981ae428f3b48705899e6218149701d7ee3cd419c8297961603444f8ea9174154baa6a04740ee8d2e58403999c92e567f0c5ebdde0ebde6ebc965bc91a1d5c8d012cb7f0b159226e187d5500458c41a6feb4fc9908f9ab9b43f5c9eb82d8e0507fd3db92e6253990acbf9edb6f1b8b3e857c559e23b015af0331ace28d63df4d25e62a8538565e52f38579f6a57582f3446fa2855ff86c7a9ee401671fd70f3a151eb97d1b83abd09612d8d1ccc93c35b64585a051fef2fc971286f135ed5f7e66858c169a2f05192c85458557c5dd2d21b015b43a3d409914cc9e4f719abb8e9376d88d4cee295a25a32bed45f60ddba6f3679980a40604ac563601442e549557cc3d0c2e9b8c722b414b87875180472d66675b1902124a7502123eb2feee87131243eb06c1ea72c11c8ff5b7c65f35544a9e35bde1fe74c99ec6cb1d16a4ec68fec046f3637737ef18f5998b9368c5190f7"}

图片描述

转载地址:http://kxmpx.baihongyu.com/

你可能感兴趣的文章
Maven 运行启动时****找不到符号*com.xxx.user.java
查看>>
Android客户端性能测试常见指标及测试方法--转载
查看>>
批量ping 检测linux主机是否可以通
查看>>
【转】搭建高可用mongodb集群(一)——配置mongodb
查看>>
DEDE织梦自定表单提交后自动发送邮件并到站长邮箱
查看>>
widget(7、dialog)
查看>>
jvm08
查看>>
Class.forName("ClassName")与ClassName.class的区别
查看>>
java中把对象、对象bean、list集合、对象数组、Map和Set以及字符串转换成Json
查看>>
Codeforces_GYM Flight Boarding Optimization
查看>>
DES算法,JAVA,遇到的问题
查看>>
error: Setup script exited with error: Unable to find vcvarsall.bat - 转
查看>>
使用Java程序读取JPG Tif等格式图片的exif信息
查看>>
自适应电脑、手机和iPad的网页设计方法
查看>>
android mvc
查看>>
CAKeyframeAnimation 关键帧动画
查看>>
flash版本更新导致shopex后台上传图片无效的问题
查看>>
Spring Bean生命周期详解
查看>>
JQuery实现聊天对话框
查看>>
windbg vmware配置
查看>>