RailsとAjaxでちょっと新しいです。コントローラでかなり単純なAjaxリクエストをデバッグしようとしているときに、次の不満があります。Rails 3:ブラウザでjsonを表示しようとするとHTTP 406と空白のページが表示される
私は、次のコードを持っている:
respond_to do |format|
#format.html { render :json => db_clean_response.to_json }
format.json { render :json => db_clean_response.to_json }
end
私は手動でURLとパラメータを入力することによって、これをデバッグしようとすると、コントローラが正しく応答を準備し、私はformat.html
コマンドのコメントを解除しない限り、RailsはHTTP/406 Not Acceptable
で応答します。 (format.html
ものはちょうどこれを修正しようとしているためであることに注意してください。)
私はは、唯一のAJAXのものと同様に、この関数は、HTMLで応答したくない。さらに、Railsは空のhtmlにjsonprintされたjsonで応答し、JSONViewのようなプラグインを使用してそれをあらかじめ確認したいと思います。
ここでは何が起こっていますか?私は望みの結果がとてもシンプルだと思っていますが、何か、どこかでそれを台無しにしています。私がAJAXをデバッグしようとすると、私のブラウザーが不用意になることなく気をつかないようにしたいのですが:-(
これをテストするときにURLに '?format = js'を使用していますか? – Thilo
...または.jsonをURLに追加していますか? – Frost
^^^^それは...好奇心の外です。 easy)format = jsonフラグなしで応答することは可能ですか? –