Selaa lähdekoodia

中间件,添加POST/GET判断,追加。

ith5 6 kuukautta sitten
vanhempi
commit
ac719eb25d
1 muutettua tiedostoa jossa 9 lisäystä ja 3 poistoa
  1. 9 3
      app/v1/middleware/FilterPermission.php

+ 9 - 3
app/v1/middleware/FilterPermission.php

@@ -13,7 +13,9 @@ class FilterPermission implements MiddlewareInterface
 {
     public function process(Request $request, callable $handler) : Response
     {
-        $originalGet = $request->get();
+
+        // 获取请求方法
+        $method = strtoupper($request->method());
 
         // 根据用户id获取用户权限
         $token = getCurrentInfo();
@@ -31,14 +33,18 @@ class FilterPermission implements MiddlewareInterface
         $auth_ad_permission = $user_info['ad_permission'] ?? -1;
 
         // 追加参数逻辑
-        $newParams = [
+        $extraParams = [
             'auth_normal_game_list' => $auth_normal_game_list === '*' ? '' : $auth_normal_game_list,
             'auth_game_list' => $auth_game_list === '*' ? '' : $auth_game_list,
             'auth_ad_permission' => $auth_ad_permission === '*' ? '' : $auth_ad_permission,
         ];
        
        // 合并并设置回 request
-       $request->setGet(array_merge($originalGet, $newParams));
+        if ($method === 'GET') {
+            $request->setGet(array_merge($request->get(), $extraParams));
+        } elseif ($method === 'POST') {
+            $request->setPost(array_merge($request->post(), $extraParams));
+        }
 
         return $handler($request);
     }