소스 검색

update: server etag

tokumeikoi 3 년 전
부모
커밋
2930f1957c
3개의 변경된 파일9개의 추가작업 그리고 3개의 파일을 삭제
  1. 7 1
      app/Http/Controllers/User/ServerController.php
  2. 2 1
      app/Http/Controllers/User/UserController.php
  3. 0 1
      app/Http/Routes/ClientRoute.php

+ 7 - 1
app/Http/Controllers/User/ServerController.php

@@ -26,8 +26,14 @@ class ServerController extends Controller
             $serverService = new ServerService();
             $servers = $serverService->getAvailableServers($user);
         }
+
+        $eTag = sha1(json_encode(array_column($servers, 'updated_at')));
+        if (strpos($request->header('If-None-Match'), $eTag) !== false ) {
+            abort(304);
+        }
+
         return response([
             'data' => $servers
-        ]);
+        ])->header('ETag', "\"{$eTag}\"");
     }
 }

+ 2 - 1
app/Http/Controllers/User/UserController.php

@@ -113,7 +113,8 @@ class UserController extends Controller
                 'u',
                 'd',
                 'transfer_enable',
-                'email'
+                'email',
+                'uuid'
             ])
             ->first();
         if (!$user) {

+ 0 - 1
app/Http/Routes/ClientRoute.php

@@ -14,7 +14,6 @@ class ClientRoute
             // Client
             $router->get('/subscribe', 'Client\\ClientController@subscribe');
             // App
-            $router->get('/app/config', 'Client\\AppController@config');
             $router->get('/app/getConfig', 'Client\\AppController@getConfig');
             $router->get('/app/getVersion', 'Client\\AppController@getVersion');
         });