10

ActionView::MissingTemplate-exceptionが原因で、私の Rails アプリが例外をスローしました。これは、リクエストに http ヘッダーACCEPTの値が含まれていたためです: */*。アプリはこの形式のテンプレートを見つけることができませんでした (これは私が予想していたことです)。ユーザー エージェントが に設定されましたMozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36

これが何を意味するのか興味があります(そして少し心配です)。これはレールの問題ですか、アプリの問題ですか、それとも攻撃ベクトルですか? これらの例外をレスキューし、フォーマットを HTML に設定して回答することを提案した同様の質問 ( Ruby on Rails や PSP の奇妙な HTTP_ACCEPT ヘッダーなど) に対する回答を見てきました。ただし、このアプローチを使用する前に、: */*が の許容値であるかACCEPT、どのブラウザがそのように設定するかを確認したいと思います。

私は Rails 3.2.13 を使用しています。

4

2 に答える 2

5

これは、Rails の MIME タイプ パーサーに古くからある既知のバグです。詳細については、このバグ レポートを参照してください。回避策はありますが、修正が望ましいでしょう!

于 2013-08-12T06:10:21.773 に答える
0

ブロックの順序が間違っている可能性がありますrespond_to。最初にテンプレートを使用してブロックを追加してみてください。たとえばhtml、デフォルトにしたい場合:

respond_to do |format|
  format.html
  format.js
end
于 2013-08-07T13:48:18.540 に答える