Dingo与JWT的使用

Dinggo与jwt鉴权

dinggo 是针对laravel/lumen框架的api开发工具包

基于api规范。它围绕三个主要功能:

1.route version路由版本管理

2.http exception异常处理

3.response transform转化响应格式

基于laravel下载dinggo

composer require dingo/api

发布api的配置文件到config中

php artisan vendor:publish --provider="DingoApiProviderLaravelServiceProvider"

jwt 全称JSON Web Tokens ,是一个非常轻巧的规范,这个规范允许我们使用jwt在用户和服务器之间传递安全可靠的信息,他的主要使用场景为:认证与数据交换

jwt的应用场景:

通常用于日志与数据交换,做身份认证

如登陆  通过jwt 使用用户名、密码验证用户信息  登陆成功获取token

安装jwt

在laravel根目录下通过composer进行jwt扩展包的安装,具体命令如下:

composer require tymon/jwt-auth

使用以下命令可以发布 API 的配置文件到 config 文件下:

php artisan vendor:publish --provider="TymonJWTAuthProvidersLaravelServiceProvider"

配置jwt

在.env文件中生成jwt加密秘钥,具体命令如下:

php artisan jwt:secret

config/api.php

<?php
.
.
.
'auth' => [
'jwt' => 'DingoApiAuthProviderJWT',
],
.
.
.
?>

config/auth.php

<?php
'guards' => [
  'web' => [
    'driver' => 'session',
    'provider' => 'users',
  ],
  'api' => [
    'driver' => 'jwt',
    'provider' => 'users',
    'hash' => false,
  ],
],

?>



原文地址:https://www.cnblogs.com/gaosf/p/14908263.html