我尝试使用behaviors()函数只允许索引操作,但现在它也被拒绝了
任何人都可以解决并解释规则返回。
<?php
namespace api\modules\v1\controllers;
use yii\rest\ActiveController;
use yii\filters\AccessControl;
/**
* Doctor Controller API
*/
class DoctorController extends ActiveController
{
public $modelClass = 'api\modules\v1\models\Doctor';
public function behaviors()
{
return [
'access' => [
'class' => \yii\filters\AccessControl::className(),
'only' => ['index'],
'rules' => [
[
'allow' => false,
'verbs' => ['POST']
],
[
'allow' => true,
'actions' => ['index'],
'verbs' => ['GET'],
'roles' => ['?'],
],
[
'allow' => true,
'roles' => ['?'],
],
// everything else is denied
],
],
];
}
}
1条答案
按热度按时间q43xntqr1#
我阅读了文件才知道
通过重写原始访问行为,它将决定任何未提及的行为为允许的。
因此,您只需要一个允许操作的规则,而不需要强制动词或角色,但是如果您想更多地限制它,您可以这样做。