Yii 2设置控制器接受json请求

时间:2016-07-15 12:16:13

标签: php json yii2 yii2-basic-app

我对Yii 2很新,但是这里有:

我想要完成的是设置一个控制器,只需读取发布到它的任何json数据。

我对Yii如何运作感到有些困惑。

我到目前为止尝试过的是设置一个名为ftest的控制器,看看我是否可以让它返回一些似乎有用的json:

 public function actionFTest(){
    $request = Yii::$app->request;
    Yii::$app->response->format = \yii\web\Response::FORMAT_RAW;
    $headers = Yii::$app->response->headers;
    $headers->add('Content-Type', 'text/json');

    $response = Yii::$app->response;
    $response->format = \yii\web\Response::FORMAT_JSON;
    $response->data = ['message' => 'Evan .. WHERE ARE YOU?'];

    //$notificationData = json_decode(file_get_contents("php://input"), true);

    //echo var_dump($notificationData);

}

因为我来回传递代码所以它有点乱。我知道我通常应该返回类似$ this-> render(etc)的东西,但我不确定我需要返回什么视图。

感谢您提供的任何帮助

1 个答案:

答案 0 :(得分:2)

这可能会有所帮助

 use Yii;
    use yii\web\Response;



    public function actionFTest()
    {
          Yii::$app->response->format = Response::FORMAT_JSON;
    }

Then after that just return a simple array like that:

    return ['param' => $value];

阅读本文         http://www.yiiframework.com/doc-2.0/yii-web-response.html# $格式细节