fix(core-middleware): 修复 JsonResource 不走响应格式化的问题

Signed-off-by: 李东云 <dongyu.li@luxcreo.ai>
This commit is contained in:
李东云
2024-06-23 18:13:41 +08:00
parent eeab8a258d
commit d524fb4e89
2 changed files with 2 additions and 2 deletions

1
.idea/HDK-Core.iml generated
View File

@@ -4,7 +4,6 @@
<content url="file://$MODULE_DIR$"> <content url="file://$MODULE_DIR$">
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" packagePrefix="Singularity\HDK\Core\" /> <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" packagePrefix="Singularity\HDK\Core\" />
<sourceFolder url="file://$MODULE_DIR$/tests" isTestSource="true" packagePrefix="Singularity\HDK\Test\Core\" /> <sourceFolder url="file://$MODULE_DIR$/tests" isTestSource="true" packagePrefix="Singularity\HDK\Test\Core\" />
<sourceFolder url="file://$MODULE_DIR$/spec" isTestSource="true" />
<excludeFolder url="file://$MODULE_DIR$/runtime" /> <excludeFolder url="file://$MODULE_DIR$/runtime" />
<excludeFolder url="file://$MODULE_DIR$/vendor/adbario/php-dot-notation" /> <excludeFolder url="file://$MODULE_DIR$/vendor/adbario/php-dot-notation" />
<excludeFolder url="file://$MODULE_DIR$/vendor/alibabacloud/credentials" /> <excludeFolder url="file://$MODULE_DIR$/vendor/alibabacloud/credentials" />

View File

@@ -18,6 +18,7 @@ use Hyperf\Di\Annotation\Inject;
use Hyperf\HttpMessage\Server\ResponsePlusProxy; use Hyperf\HttpMessage\Server\ResponsePlusProxy;
use Hyperf\HttpMessage\Stream\SwooleStream; use Hyperf\HttpMessage\Stream\SwooleStream;
use Hyperf\HttpServer\CoreMiddleware; use Hyperf\HttpServer\CoreMiddleware;
use Hyperf\Resource\Json\JsonResource;
use Lmc\HttpConstants\Header; use Lmc\HttpConstants\Header;
use Psr\Http\Message\ResponseInterface; use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface; use Psr\Http\Message\ServerRequestInterface;
@@ -51,7 +52,7 @@ class CommonCoreMiddleware extends CoreMiddleware
): ResponsePlusInterface { ): ResponsePlusInterface {
$style = $this->apiStyleService->get(); $style = $this->apiStyleService->get();
if (!($response instanceof ResponseInterface)) { if (!($response instanceof ResponseInterface) || $response instanceof JsonResource) {
$response = $style === ApiStyleService::RESTFUL $response = $style === ApiStyleService::RESTFUL
? $this->transferToRestfulResponse($response, $request) ? $this->transferToRestfulResponse($response, $request)
: $this->transferToClassicResponse($response, $request); : $this->transferToClassicResponse($response, $request);