kerwinzc / easyauth
API接口签名验证与Token授权验证
v3.0
2018-06-26 02:33 UTC
Requires
- php: >=7.0
- illuminate/support: ~5
This package is not auto-updated.
Last update: 2025-07-06 08:28:59 UTC
README
安装
下载
composer require kerwinzc/easyauth
创建配置文件
php artisan vendor:publish --provider="Kerwinzc\EasyAuth\ServiceProvider"
文件内容如下,自行修改
<?php
return [
'request' => [
// Api请求sign加密盐值
'api_request_salt' => env('API_REQUEST_SALT', 'default'),
// Token过期时间
'token_expired' => 10080,
// 是否开启单点登录
'api_check_only' => false,
// 是否开启调试模式
'api_debug' => false,
// 调试模式传入user_id
'api_debug_user_id' => 1,
],
];
使用
注册服务提供者
在 config/app.php
注册 ServiceProvider
'providers' => [
// ...
Kerwinzc\EasyAuth\ServiceProvider::class,
]
创建token
$token = app('easyauth')->make($user_id);
使用签名验证中间件
客户端签名生成规则
ksort(request()->input());
$string = '';
foreach ($data as $key => $value) {
$string .= $key . '=' . $value . '&';
}
$salt = 'config中定义的api_request_salt盐值';
$string .= $salt;
$sign = md5($string);
// 发送数据中添加签名sign字段为$sign
前往app/Http/Kernel.php
中注册中间件
protected $routeMiddleware = [
// ...
'easyauth' => \Kerwinzc\EasyAuth\Middleware\Check::class,
];
在需要签名验证的路由上添加中间件
Route::group(['middleware' => ['web', 'easyauth']], function () {
Route::get('/user', function () {
$user_id = request()->get('user_id'); // 拿到用户ID
dd($user_id);
});
});