アプリケーションのフロントエンドと同じルートを使用してYii2でREST Webアプリケーションを作成しようとしています。私が達成しようとしているのは、既定でhtmlを返す同じコントローラーアクションと、xmlまたはjsonを指定した場合、すなわちGET http://example/controller/action
を使用してアクションのビューに移りますが、コントローラーが要求ボディにAccept: application/json
を指定したときjsonデータ。これは、Ruby on Railsの中で、単にこのようとしてYii2異なるフォーマット要求に応答する同じアクション
を行うことができます。
respond_to do |format|
format.html
format.json {render.json: @model}
format.xml {render.xml: @model}
end
どのように私はYii2でこれを達成していますか?
私はQuickStart - RESTful Web Servicesのチュートリアルを試しましたが、アプリケーションに送信する要求ヘッダーが何であれ、XMLデータのみを表示するため、HTMLビューが役に立たなくなります。レスポンスの書式について
フォーマッタについてのページはありますか? http://www.yiiframework.com/doc-2.0/guide-rest-quick-start.html –
リクエストの本文に「同意する」と指定したとします。ヘッダーを意味しましたか? –