yii2 做速率限制,实现RateLimitInterface,方法没有被执行 [ 求助交流 ]
这三个方法不被执行
public function getRateLimit($request, $action){
}
public function loadAllowance($request, $action){
}
public function saveAllowance($request, $action, $allowance, $timestamp){
}
共 2 条回复
-
- user组件指定的类(user identity class)是否继承实现
yii\filters\RateLimitInterface
接口? - 控制器中行为(behaviors)中是否配置一个行为过滤器(
yii\filters\RateLimiter
)来执行速率限制检查,如下1. ?如果你继承的控制器是
yii\rest\Controller
则无需配置一个行为过滤器来执行速率限制检查,因为yii\rest\Controller
中已默认添加,只要identity实现了接口,自动使用。但是如果你需要配置其他信息。如下 2.
// 1. public function behaviors() { return [ 'rateLimiter' => [ 'class' => \yii\filters\RateLimiter::className(), ], ]; } // 2. public function behaviors() { $behaviors = parent::behaviors(); $behaviors['rateLimiter']['enableRateLimitHeaders'] = false; return $behaviors; }
- user组件指定的类(user identity class)是否继承实现
jixinyu
注册时间:2016-01-19
最后登录:2016-03-10
在线时长:3小时49分
最后登录:2016-03-10
在线时长:3小时49分
- 粉丝0
- 金钱100
- 威望0
- 积分130