diff --git a/app/Http/Middleware/WebApi.php b/app/Http/Middleware/WebApi.php index fc100a4f3..f9788e09e 100644 --- a/app/Http/Middleware/WebApi.php +++ b/app/Http/Middleware/WebApi.php @@ -22,6 +22,7 @@ class WebApi // 为每个请求生成唯一ID $request->requestId = RequestContext::generateRequestId(); RequestContext::set('start_time', microtime(true)); + RequestContext::set('header_language', $request->header('language')); // 加载Doo类 Doo::load(); diff --git a/app/Models/User.php b/app/Models/User.php index dfdb0e868..c721b75db 100644 --- a/app/Models/User.php +++ b/app/Models/User.php @@ -10,7 +10,6 @@ use App\Module\Table\OnlineData; use App\Services\RequestContext; use Cache; use Carbon\Carbon; -use Request; /** * App\Models\User @@ -450,10 +449,10 @@ class User extends AbstractModel if (Carbon::parse($user->line_at)->addSeconds(30)->lt(Carbon::now())) { $upArray['line_at'] = Carbon::now(); } - if (empty($user->lang) || Request::hasHeader('language')) { - $lang = Request::header('language'); - if (Doo::checkLanguage($lang) && $user->lang != $lang) { - $upArray['lang'] = $lang; + $headerLanguage = RequestContext::get('header_language'); + if (empty($user->lang) || $headerLanguage) { + if (Doo::checkLanguage($headerLanguage) && $user->lang != $headerLanguage) { + $upArray['lang'] = $headerLanguage; } } if ($upArray) {