diff --git a/app/Middleware/CorsMiddleware.php b/app/Middleware/CorsMiddleware.php index 7fb6495..45479a6 100644 --- a/app/Middleware/CorsMiddleware.php +++ b/app/Middleware/CorsMiddleware.php @@ -29,6 +29,35 @@ class CorsMiddleware implements MiddlewareInterface return $response; } + $request = \Hyperf\Utils\Context::override(ServerRequestInterface::class, function (ServerRequestInterface $request) + { + $preDatas = $request->getParsedBody(); + if(isset($preDatas['market_id'])){ + if($preDatas['market_id']==-1){ + $preDatas['market_id'] = 0; + + if (env('APP_ENV') == 'prod') { + unset($preDatas['sign']); + $sign = $this->signature($preDatas); + $preDatas['sign'] = $sign; + } + } + } + return $request->withParsedBody($preDatas); + }); + return $handler->handle($request); } + + private function signature($params) + { + 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')); + } } \ No newline at end of file diff --git a/config/autoload/dependencies.php b/config/autoload/dependencies.php index 949ae87..0ef5778 100644 --- a/config/autoload/dependencies.php +++ b/config/autoload/dependencies.php @@ -11,7 +11,7 @@ declare(strict_types=1); */ return [ - \Hyperf\HttpServer\Contract\RequestInterface::class => \App\Commons\LanzuRequest::class, + // \Hyperf\HttpServer\Contract\RequestInterface::class => \App\Commons\LanzuRequest::class, \App\Service\ServiceEvaluateServiceInterface::class => \App\Service\ServiceEvaluateService::class, \App\Service\AttachmentServiceInterface::class => \App\Service\AttachmentService::class, \App\Service\ParamsTokenServiceInterface::class => \App\Service\ParamsTokenSsdbService::class,