1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- <?php
- namespace api\modules\v1\controllers;
- use yii\rest\ActiveController;
- use yii\helpers\ArrayHelper;
- use yii\filters\auth\QueryParamAuth;
- //use yii\filters\auth\HttpBasicAuth;
- //use yii\filters\auth\HttpBearerAuth;
- //use yii\filters\auth\CompositeAuth;
- use yii\filters\Cors;
- use yii;
- class TestController extends ActiveController
- {
- public $modelClass = 'common\models\User';
- public $_user="";
- // public function behaviors() {
- // return ArrayHelper::merge (parent::behaviors(), [
- // 'authenticator' => [
- // 'class' => QueryParamAuth::className()
- // ]
- // ] );
- // }
- // public function behaviors()
- // {
- // $behaviors = parent::behaviors();
- // $behaviors['authenticator'] = [
- // 'class' => CompositeAuth::className(),
- // 'authMethods' => [
- // HttpBasicAuth::className(),
- // HttpBearerAuth::className(),
- // QueryParamAuth::className(),
- // ],
- // ];
- // return $behaviors;
- // }
- function behaviors() {
- $behaviors = parent::behaviors();
- // 当前操作的id
- $currentAction = Yii::$app->controller->action->id;
- // 需要进行认证的action
- $authActions = ['test','test2'];
- // 需要进行认证的action就要设置安全认证类
- if(in_array($currentAction, $authActions)) {
- $behaviors['authenticator'] = [
- 'class' => QueryParamAuth::className(),
- ];
- $this->_user="123123";
- }
- return ArrayHelper::merge([
- //设置可以接收访问的域和方法。
- [
- 'class' => Cors::className(),
- 'cors' => [
- 'Origin' => ['*'],
- 'Access-Control-Request-Headers' => ['Origin', 'X-Requested-With', 'Content-Type', 'Accept'],
- 'Access-Control-Request-Method' => ['GET', 'POST', 'PUT', 'PATCH', 'DELETE', 'HEAD', 'OPTIONS'],
- ],
- ],
- ], $behaviors);
- }
- public function actionTest()
- {
- //$token = Yii::$app->request->get('access-token');
- return ['code'=>0,'message'=>'第一个接口'.$this->_user,'status'=>200];
- }
- public function actionTest2()
- {
- $token = Yii::$app->request->get('access-token');
- return ['code'=>0,'message'=>'第一个接口6','status'=>200];
- }
- }
|