Files
p_ysk/app/middleware/JwtAuthMiddleware.php
2025-11-18 13:38:05 +08:00

33 lines
898 B
PHP

<?php
namespace app\middleware;
use app\exception\MyBusinessException;
use support\exception\BusinessException;
use support\Redis;
use Webman\Http\Response;
use Webman\Http\Request;
use Webman\MiddlewareInterface;
class JwtAuthMiddleware implements MiddlewareInterface
{
public function process(Request $request, callable $handler) : Response
{
$uid = Redis::get('token:client:token:' . $request->header('token'));
if($uid) {
// 用户
$user_type = 1;
}else{
$uid = Redis::get('token:admin:token:' . $request->header('token'));
if(!$uid) {
throw new MyBusinessException('请登录', 3000);
}
// 商家
$user_type = 2;
}
$request->setPost('uid', $uid);
$request->setPost('user_type', $user_type);
return $handler($request);
}
}