|
|
@ -39,9 +39,9 @@ class ApiMiddleware implements MiddlewareInterface |
|
|
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface |
|
|
public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface |
|
|
{ |
|
|
{ |
|
|
|
|
|
|
|
|
if (env('APP_ENV') == 'dev') { |
|
|
|
|
|
return $handler->handle($request); |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
// if (env('APP_ENV') == 'dev') {
|
|
|
|
|
|
// return $handler->handle($request);
|
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
// 签名校验
|
|
|
// 签名校验
|
|
|
|
|
|
|
|
|
@ -82,18 +82,22 @@ class ApiMiddleware implements MiddlewareInterface |
|
|
unset($params['sign']); |
|
|
unset($params['sign']); |
|
|
$timestamp = $params['timestamp']; |
|
|
$timestamp = $params['timestamp']; |
|
|
|
|
|
|
|
|
if (empty($sign) || ($timestamp+config('autoload.auth.api.sign.expire')) < time()) { |
|
|
|
|
|
|
|
|
if (empty($sign) || ($timestamp+config('auth.api.sign.expire_time')) < time()) { |
|
|
return false; |
|
|
return false; |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
ksort($params); |
|
|
|
|
|
$params = http_build_query($params); |
|
|
|
|
|
|
|
|
|
|
|
return $sign == $this->signature($params); |
|
|
return $sign == $this->signature($params); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
private function signature($http_query) |
|
|
|
|
|
|
|
|
private function signature($params) |
|
|
{ |
|
|
{ |
|
|
return sha1(md5($http_query).config('autoload.auth.api.sign.secret_key')); |
|
|
|
|
|
|
|
|
ksort($params); |
|
|
|
|
|
|
|
|
|
|
|
$http_query = []; |
|
|
|
|
|
foreach ($params as $key => $value) { |
|
|
|
|
|
$http_query[] = $key.'='.$value; |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
return sha1(md5(implode('&', $http_query)).config('auth.api.sign.secret_key')); |
|
|
} |
|
|
} |
|
|
} |
|
|
} |