little-apps / littlejwt
用Little JWT保护您的Laravel Web应用 - 无缝令牌管理的关键!
v2.2.0-beta
2024-06-02 06:01 UTC
Requires
- php: ^8.1||^8.2
- illuminate/contracts: ^10.0||^11.0
- spatie/laravel-package-tools: ^1.16
- web-token/jwt-library: ^3.3
Requires (Dev)
- larastan/larastan: 2.9
- laravel/legacy-factories: ^1.3
- laravel/pint: ^1.15
- nunomaduro/collision: ^8.1.1||^7.10.0
- orchestra/testbench: ^9.0.0||^8.22.0
- phpstan/extension-installer: ^1.3
- phpstan/phpstan-deprecation-rules: ^1.1
- phpstan/phpstan-phpunit: ^1.3
- spatie/laravel-ray: ^1.35
This package is auto-updated.
Last update: 2024-09-18 02:53:08 UTC
README
用Little JWT保护您的Laravel Web应用 - 无缝令牌管理的关键!
显示您的支持
Little Apps依靠像您这样的人来保持我们的软件运行。如果您想显示对Little Registry Cleaner的支持,则可以通过PayPal、Payza或信用卡(通过Stripe)进行捐赠 进行捐赠。请注意,任何金额都有帮助(甚至只是一美元)。
要求
- PHP v8.1或更高版本
- Laravel 10.x或11.x
安装
通过composer安装包
composer require little-apps/littlejwt
使用以下命令发布配置文件
php artisan vendor:publish --tag="littlejwt-config"
生成用于构建和验证JWT的密钥短语
php artisan littlejwt:phrase
有关生成不同类型密钥的信息,请参阅文档。
升级
重要:在继续之前,请注意v2.0仍在测试版,不建议用于生产系统。
备份配置文件
cp config/littlejwt.php config/littlejwt.php.old
通过composer升级包
composer require little-apps/littlejwt:"^2.0.0@beta"
发布新的配置文件(覆盖现有配置文件)
php artisan vendor:publish --tag="littlejwt-config" --existing
您需要手动设置配置文件以匹配旧配置文件。
用法
构建JWT
use LittleApps\LittleJWT\Facades\LittleJWT; use LittleApps\LittleJWT\Build\Builder; $jwt = LittleJWT::create(function (Builder $builder) { $builder // Adds claim 'abc' with value 'def' to header claims. ->abc('def', true) // Adds claim 'ghi' with value 'klm' to payload claims. ->ghi('klm') // Adds claim 'nop' with value 'qrs' to payload claims. ->nop('qrs', false); }); $token = (string) $jwt; // $token = "ey...";
验证JWT
use LittleApps\LittleJWT\Facades\LittleJWT; use LittleApps\LittleJWT\Validation\Validator; $token = "ey..."; $passes = LittleJWT::validateToken($token, function (Validator $validator) { $validator // Checks the value of the 'abc' claim in the header === (strictly equals) 'def' ->equals('abc', 'def', true, true) // Checks the value of the 'ghi' claim in the payload == (equals) 'klm' ->equals('ghi', 'klm') // Checks the value of the 'nop' claim in the payload === (strictly equals) 'qrs' ->equals('nop', 'qrs', true, false); }); if ($passes) { // JWT is valid. } else { // JWT is invalid. }
更多文档
更多文档位于docs.getlittlejwt.com。
测试
composer test
变更日志
有关最近更改的更多信息,请参阅变更日志。
贡献
有关详细信息,请参阅贡献指南。
安全漏洞
请参阅我们如何报告安全漏洞的安全策略。
致谢
库
Little JWT使用以下库构建
贡献者
感谢以下人员的贡献
许可证
MIT许可证(MIT)。有关更多信息,请参阅许可证文件。