Yii2 看不到 post 字段

Yii2 do not see post fields

我创建了一个带有动作的简单休息控制器,并尝试通过 restclient mozilla 扩展发送 post 数据。有一个问题,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'];
    }
}

你没有错过 if 的 ('post' => $_POST) 参数吗?

试试这个:

return ['status' => 'ok', 'message' => Yii::t('api', 'You are logged in successfully!'), 'data' => $user, 'post' => $_POST];

问题已解决。使用邮递员或其他允许您发送表单数据的软件。不仅生体/