Laravel最佳实践--API请求频率限制--Throttle中间件
Laravel最佳实践–API请求频率限制–Throttle中间件
- Laravel最佳实践--API请求频率限制--Throttle中间件
-
- 访问频次限制概述
- 使用Throttle中间件
-
- throttle默认限制每分钟尝试60次
- 定义频率和重试等待时间
- 自定义Throttle中间件,返回API响应
- Throttle信息存储
在向公网提供API供外部访问数据时,为了避免被恶意攻击除了token认证最好还要给API加上请求频次限制,而在Laravel中从5.2开始框架自带的组件Throttle就支持访问频次限制了,并提供了一个Throttle中间件供我们使用。
不过Throttle中间件在访问API频次达到限制后会返回一个HTML响应告诉你请求超频,在应用中我们往往更希望返回一个API响应而不是一个HTML响应,所以在文章中会提供一个自定义的中间件替换默认的Throttle中间件来实现自定义响应内容。
访问频次限制概述频次限制经常用在API中,用于限制独立请求者对特定API的请求频率。例如,如果设置频次限制为每分钟1000次