Я пытаюсь создать промежуточное программное обеспечение, которое будет проверять состояние указанного сервера и помещать этот статус в кеш, но кеш не работает в промежуточном программном обеспечении должным образом, данное значение кеша всегда равно нулю, когда я пытаюсь проверить наличие ключа и т. д.
public function handle($request, Closure $next)
{
$response = $next($request);
if(!Cache::has(Config::get('ots.server_status_cache_name'))) {
if($this->checkServerStatus()) {
Cache::put(Config::get('ots.server_status_cache_name'), 1, Config::get('ots.server_status_cache_time'));
} else {
Cache::put(Config::get('ots.server_status_cache_name'), 0, Config::get('ots.server_status_cache_time'));
}
}
return $response;
}
Просто для вашего сведения, $this->checkServerStatus() возвращает true/false.
Итак, когда я пытаюсь проверить наличие ключа Cache, он всегда имеет значение false для Cache::has("KEY") или null для Cache::get("KEY").
Что случилось? Я не могу использовать кеш в промежуточном программном обеспечении?