2016-07-15 10 views
1

を要求します。私が達成しようとしている何のYii 2セットアップコントローラは、私はYiiの2に非常に新しいですが、ここに行く

は、単純に投稿されたすべてのJSONデータを読み込み、コントローラを設定することですそれ。

これはYiiでどのように動作するか少し混乱します。少し厄介

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); 

} 

その私が投げてきたので、私はこれまでのところ、私はそれが動作するように思われるいくつかのJSONを返す取得できたかどうかを確認するためにFTESTと呼ばれるコントローラを設定されて試した何

コード内で前後に私は通常$ this-> render(etc)のようなものを返すべきですが、私はビューとして返す必要があるかどうかはわかりません。あなたは

+0

ロットはあなたのポスト、などから明らかではないが、1であるかもしれません)jsonデータはどこから来ますか2)それを使って何をするつもりですか?3)データを処理したらどうなるでしょうか? ?? –

+0

「有効にするjson入力」のセクションをご覧ください:http://www.yiiframework.com/doc-2.0/guide-rest-quick-start.html#enabling-json-input - API自体を構築しているわけではないので、ここでその例を使って説明することができます。 – ldg

+0

申し訳ありません。 データは別のサーバーの別のスクリプト(ホワイトリストに登録されたIP)からこのページ/ URLに投稿されます。この背後にある根底にある問題は、このアクションにデータを投稿できないことが判明しました。このアクションには、CSRFの検証が有効になっていることで修正されました。 $ this-> enableCsrfValidation = false; – user3798442

答えて

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# $形式-詳細を読む事の

+0

万歳に感謝します。 – user3798442

+0

それは働くことをあなたから聞いてうれしい..楽しむ:) @ user3798442 –

関連する問題