所以,我正在laravel中实现一个中间件,它每隔5分钟检查一次API连接,但我有一些奇怪的行为。
我实现了以下代码进行测试,但是当我刷新页面时,它总是返回'有效'它永远不会返回'重新更新',但是如果我移动返回响应在Cache :: put语句之上过期它确实返回'过期'但是当然不会设置缓存。
此代码位于中间件而非控制器内,我只是为了调试目的而返回响应。实际上,行为将是如果缓存具有密钥,它将移动到下一个中间件。
if ( Cache::has('apicheck') ) {
return Response::make( 'Valid' , 200 );
}
else
{
//Make API Check Here and Set Cache-apicheck if success
Cache::put('apicheck', 'success', 5);
return Response::make( 'Renewed' , 200 );
}