generated from liutk/owl-admin-base
34 lines
904 B
PHP
34 lines
904 B
PHP
<?php
|
|
|
|
namespace App\Http\Middleware;
|
|
|
|
use Closure;
|
|
use Illuminate\Http\Request;
|
|
use Symfony\Component\HttpFoundation\Response;
|
|
use Illuminate\Routing\Middleware\ThrottleRequests; // 1. 引入父类
|
|
|
|
class CustomThrottle extends ThrottleRequests
|
|
{
|
|
/**
|
|
* Handle an incoming request.
|
|
*
|
|
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
|
|
*/
|
|
public function handlehandle(Request $request, Closure $next, $maxAttempts = 60, $decayMinutes = 1)
|
|
{
|
|
// 1. 设置白名单
|
|
$whitelist = [
|
|
'127.0.0.1',
|
|
'47.109.74.245',
|
|
'::1'
|
|
];
|
|
|
|
// 2. 命中白名单,直接放行,不计算次数
|
|
if (in_array($request->ip(), $whitelist)) {
|
|
return $next($request);
|
|
}
|
|
|
|
return parent::handle($request, $next, $maxAttempts, $decayMinutes);
|
|
}
|
|
}
|