yii没有认证/授权的单个控制器的动作

时间:2014-07-24 06:55:18

标签: php yii

我正在使用yii-powered app作为公共API的后端。我使用controllers/ApiController方法创建了actionTest类,并尝试通过url domain.ltd/api/test获取一些数据,而无需通过login / pass授权,这通常需要另一个控制器(例如SiteController)。我怎么能这样做?

我认为变种很少:

  1. 使用authManager(?)
  2. 设置访客访问路由/ api / *
  3. UserIdentity类的神奇之处......

1 个答案:

答案 0 :(得分:2)

要允许任何人访问该页面,只需在控制器规则中指定(类似于登录页面,因为您可以在不登录的情况下访问它)

public function accessRules()
{
    return [
        [
            'allow',
            'actions' => ['test'],
            'users' => ['*'],
        ],
        ['deny', // deny all users
            'users' => ['*'],
        ],
    ];
}