Explorar el Código

fix(AppGame): 为配置表接口添加跨域访问支持

- 在 JsonController 中为 config 方法的所有响应添加了跨域访问控制 (CORS) 头
- 包括成功响应、400 错误响应、500 错误响应以及异常处理中的响应
- 设置了允许所有来源 (*) 访问,支持 GET、POST 和 OPTIONS 方法,并允许 Content-Type 和 Authorization 头
notfff hace 7 meses
padre
commit
e4c2ead72e
Se han modificado 1 ficheros con 27 adiciones y 4 borrados
  1. 27 4
      app/Module/AppGame/HttpControllers/JsonController.php

+ 27 - 4
app/Module/AppGame/HttpControllers/JsonController.php

@@ -57,7 +57,11 @@ class JsonController extends Controller
                 'code' => RESPONSE_CODE::REQUEST_ERROR,
                 'message' => '配置表不存在',
                 'data' => null
-            ], 400);
+            ], 400)->withHeaders([
+                'Access-Control-Allow-Origin' => '*',
+                'Access-Control-Allow-Methods' => 'GET, POST, OPTIONS',
+                'Access-Control-Allow-Headers' => 'Content-Type, Authorization'
+            ]);
         }
 
         try {
@@ -71,11 +75,26 @@ class JsonController extends Controller
                     'code' => RESPONSE_CODE::SERVER_ERROR,
                     'message' => '配置表数据为空',
                     'data' => null
-                ], 500);
+                ], 500)->withHeaders([
+                    'Access-Control-Allow-Origin' => '*',
+                    'Access-Control-Allow-Methods' => 'GET, POST, OPTIONS',
+                    'Access-Control-Allow-Headers' => 'Content-Type, Authorization'
+                ]);
             }
 
             // 返回配置表数据
-            return $data;
+            if (is_array($data) || is_object($data)) {
+                return response()->json($data)->withHeaders([
+                    'Access-Control-Allow-Origin' => '*',
+                    'Access-Control-Allow-Methods' => 'GET, POST, OPTIONS',
+                    'Access-Control-Allow-Headers' => 'Content-Type, Authorization'
+                ]);
+            }
+            return response($data)->withHeaders([
+                'Access-Control-Allow-Origin' => '*',
+                'Access-Control-Allow-Methods' => 'GET, POST, OPTIONS',
+                'Access-Control-Allow-Headers' => 'Content-Type, Authorization'
+            ]);
         } catch (\Exception $e) {
             // 记录错误日志
             Log::error('获取配置表数据失败', [
@@ -89,7 +108,11 @@ class JsonController extends Controller
                 'code' => RESPONSE_CODE::SERVER_ERROR,
                 'message' => '获取配置表数据失败',
                 'data' => null
-            ], 500);
+            ], 500)->withHeaders([
+                'Access-Control-Allow-Origin' => '*',
+                'Access-Control-Allow-Methods' => 'GET, POST, OPTIONS',
+                'Access-Control-Allow-Headers' => 'Content-Type, Authorization'
+            ]);
         }
     }