| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- <?php
- namespace App\Module\AppGame\Middleware;
- use App\Module\System\Services\ConfigService;
- use Closure;
- use Illuminate\Http\Request;
- use Uraus\Kku\Response;
- /**
- * 检测app版本号验证
- */
- class AppVersion
- {
- /**
- * Handle an incoming request.
- *
- * @param \Illuminate\Http\Request $request
- * @param \Closure $next
- * @return mixed
- */
- public function handle(Request $request, Closure $next)
- {
- // 是否校验版本号
- $isCheckVersion = ConfigService::getValueDefault('is_check_app_version');
- if ($isCheckVersion == 0) {
- return $next($request);
- }
- // 获取app版本号
- $appVersion = $request->header('appversion');
- if (empty($appVersion)) {
- return $this->error();
- }
- // 对比app版本号
- $systemVersion = ConfigService::getValueDefault('min_app_version');
- if ($appVersion !== $systemVersion) {
- return $this->error();
- }
- return $next($request);
- }
- private function error()
- {
- $response = new Response();
- $response->setCode(\Uraus\Kku\Common\RESPONSE_CODE::REQUEST_ERROR);
- $response->setMsg('请重启更新app');
- return \App\Module\AppGame\Tools\Protobuf::response($response);
- }
- }
|