【发布时间】:2022-01-07 00:03:33
【问题描述】:
我需要根据存储在数据库表中的参数组合在 laravel 8 中动态设置速率限制器
| S.No | Key | Param 1 | Param 2 | Param 3 | Rate limit |
|---|---|---|---|---|---|
| 1 | adx | param_1_a | param_2_d | param_3_x | 20 |
| 2 | buz | param_1_b | param_2_u | param_3_z | 30 |
| 3 | cfy | param_1_c | param_2_f | param_3_y | 40 |
和速率限制器代码如下
protected function configureRateLimiting()
{
RateLimiter::for('api', function (Request $request) {
return [
Limit::perMinute(rateLimit)->by(RateLimitKey)->response(function () {
...
}),
Limit::perMinute(rateLimit1)->by(RateLimitKey1)->response(function () {
...
}),
];
});
}
我需要在上面代码返回的数组中加入限速器
RateLimit 值将是数据库表中“速率限制”列的值
RateLimitKey 将结合列 Key、Param 1、Param 2、Param 3 的值(例如,key_param1_param2_param_3)
需要使用从数据库表中检索到的数据动态添加限速器
我不确定如何继续在 laravel 8 中添加速率限制器
【问题讨论】:
-
key在数据库中代表什么?
-
是请求中存在的参数
标签: php laravel dynamic ratelimit