思路:使用Redis,根據使用者id和電腦IP統計訪問同一個位址列的次數,超過則限制訪問
Redis參考文件:Redis《Laravel 8 中文文件》
PS:自己進行學習記錄並分享給有需要的小夥伴
安裝Redis
composer require predis/predis
開啟Redis
中介軟體操作
public function handle(Request $request, Closure $next)
{
//假如uid=1
$uid=1;
$id=$uid;
$key=$request->ip().'_'.$request->pathinfo().'_'.$id;
// 判斷key是否存在
$check=Cache::store('redis')->has($key);
if ($check){
Cache::store('redis')->increment($key);
$count=Cache::store('redis')->get($key);
if ($count>2){
return 0;
}
}else{
Cache::store('redis')->set($key,1,60);
}
return $next($request);
}
本作品採用《CC 協議》,轉載必須註明作者和本文連結