2016-03-25 5 views
0

コントローラのアクションテンプレート内にHTTPResponseステータスコードとボディを表示するにはどうすればよいですか?私が設定しようとしたときデフォルトテンプレート内でステータスコードと本文にアクセスするにはどうすればよいですか?

$this->response->setStatusCode(400); 
$this->response->setBody('invalid 2'); 

返信する$ thisは私のアクションテンプレートのものだけが表示されますか?私のデフォルトテンプレート内のステータスコードと本文にアクセスするにはどうしたらいいですか?

+0

'$ this-> response'を返そうとしませんか? –

+0

私のテンプレート内のステータスコードと応答本体にアクセスしたい –

答えて

1

あなたはそのようなこと行うことができます:あなたが使用できるテンプレートに続いて

public function Response() 
{ 
    $response = new ArrayData(array(
    "StatusCode" => $this->getResponse()->getStatusCode(), 
    "Body" => $this->getResponse()->getBody() 
)); 

    return $response; 
} 

SS_HTTPResponseデータを得るためにあなたのControllerにメソッドを追加し

$Response.StatusCode$Response.Body

-1

応答本体を形成するためにテンプレートが使用されます。あなたのケースでは、レスポンス本文を文字列として設定します。

達成しようとしていることに関する十分な情報がありません。

特定のコードに対してniceエラーページを作成する場合は、ErrorPageタイプを使用して特別なページを作成し、コントローラに$this->httpError(400);を使用する必要があります。 ErrorPage contaisフィールドErrorCodeは、既存のエラーページをコードで見つけるために使用され、テンプレートで使用されますが、通常はエラーコードとメッセージをContentに直接入力します。

+0

私がしたいのは、Laravelのような私のアクションテンプレート内のHttpResponseのpopertiesにアクセスすることです –

関連する問題