garbuzivan/laraveltokens

Laravel中处理个人和全局令牌的包 + API中间件

dev-main 2022-06-01 09:55 UTC

This package is auto-updated.

Last update: 2024-09-29 05:49:12 UTC


README

Scrutinizer Code Quality Code Coverage Build Status Code Intelligence Status

Laravel令牌

包 - Laravel中处理个人和全局令牌的包 + API中间件

特点

  • 包允许选择性地以加密或未加密的形式存储令牌。
  • 将令牌与用户关联的功能
  • 创建全局令牌的功能,这些令牌允许通过中间件访问,无需与用户关联
  • 自带的中间件
  • 跟踪令牌最后活动的能力
  • 创建、编辑和删除的命令行工具

在生成后本地安装包,无需发布到GIT和PACKAGIST

在composer.json文件的repositories部分添加包路径,格式如下

"repositories": [
    {
        "type": "path",
        "url": "./packages/garbuzivan/laraveltokens/"
    }
]

安装 - 安装

composer require garbuzivan/laraveltokens

将ServiceProvider添加到config/app.php文件中的'providers'部分

Garbuzivan\Laraveltokens\ServiceProvider::class,

配置文件

php artisan vendor:publish --force --provider="Garbuzivan\Laraveltokens\ServiceProvider" --tag="config"

.env

需要设置自己的令牌编码方式。用于签名证书和创建签名。也可以用于客户端的令牌验证。指定文件路径时,将自动使用文件内容作为密钥。

LARAVEL_TOKENS_SALT=Fo3SMqqUbrxKJMQW0sVOB4Q

连接中间件

在app/Http/Kernel.php文件中的$middlewareGroups的"api"块中添加新的中间件

\Garbuzivan\Laraveltokens\Middleware\LaravelTokens::class,

在app/Http/Kernel.php文件中的$routeMiddleware中添加

'auth.laravel.tokens' => \Garbuzivan\Laraveltokens\Middleware\LaravelTokens::class,

将Trait连接到Model/User

use UserTrait;

命令行工具

可以在artisan中查看命令列表。支持创建、删除和续订令牌

php artisan tokens

Route::middleware应用示例

Route::get('/', function () {
    return "Test API auth.laravel.tokens - Garbuzivan\Laraveltokens\Middleware\LaravelTokens";
})->middleware(['auth.laravel.tokens']);