api/app/middleware/LoginCheck.php
2021-01-04 13:45:02 +08:00

37 lines
899 B
PHP

<?php
declare (strict_types = 1);
namespace app\middleware;
use app\model\StringUtil;
use app\model\Users;
class LoginCheck
{
/**
* 处理请求
*
* @param \think\Request $request
* @param \Closure $next
* @return Response
*/
public function handle($request, \Closure $next)
{
$token = $request->param('token');
if(!empty($token)) {
$token = str_replace(' ','+',$token);
$token = StringUtil::decryption($token,StringUtil::USER_TOKEN);
}
if(empty($token)){
return json(['code'=>1,'message'=>'登录的用户数据不合法']);
}
$user = (new Users())->find($token);
if(empty($user)){
return json(['code'=>2,'message'=>'不存在当前请求的用户']);
}
$request->user = $user;
return $next($request);
}
}