我创建了一个带有动作的简单休息控制器,并尝试通过 restclient mozilla 扩展发送发布数据。有一个问题,yii2 没有看到所有的post 字段并且$_POST 是[]。请求方法是 POST,我肯定会发送数据。class ApiController extends Controller{ public function beforeAction($action) { $this->enableCsrfValidation = false; Yii::$app->response->format = Response::FORMAT_JSON; return parent::beforeAction($action); } public function actionAuth() { Yii::$app->response->format = Response::FORMAT_JSON; if(Yii::$app->request->isPost) { $username = Yii::$app->request->post('username'); $password = Yii::$app->request->post('password'); $user = Players::find() ->where(['username' => $username]) ->orWhere(['email' => $username]) ->one(); if($user->validatePassword($password)) { $user->generateApiToken(); $user->save(); return ['status' => 'ok', 'message' => Yii::t('api', 'You are logged in successfully!'), 'data' => $user]; } else { return ['status' => 'error', 'message' => Yii::t('api', 'Username or password is wrong.'), 'post' => $_POST]; } } else return ['status' => 'error']; }}
2 回答
慕仙森
TA贡献1827条经验 获得超7个赞
你没有错过'post' => $_POST
你的 if 的 ( ) 论点吗?
尝试这个:
return ['status' => 'ok', 'message' => Yii::t('api', 'You are logged in successfully!'), 'data' => $user, 'post' => $_POST];
- 2 回答
- 0 关注
- 89 浏览
添加回答
举报
0/150
提交
取消