FireFox3 で Web アプリケーションをデバッグしようとしています。ただし、JSON フィードがアプリケーションから来ると、Firefox は新しいプログラムで「application/json」を開こうとします。通常のテキスト ファイルのように JSON を処理し、現在のタブで JSON を開くように FireFox3 を構成する方法はありますか?
ありがとう。
JSONView Firefox 拡張機能は非常に優れています。
フォーマット、ハイライトなど...
唯一の欠点は、MIME タイプを に設定する必要があること"application/json"
です。しかし、それは実際にはあなたにとって欠点ではありません.あなたの「答え」 (答えであってはならない)に"application/json"
基づいて、あなたの問題はMIMEタイプが表示する代わりに。
Open in browser extension を試してみてください。
[2010 年 5 月 30 日編集 - リンクを更新]
application/jsonの代わりにMIMEタイプのtext/javascriptを使用することを検討してください
設定>アプリケーションリストを調べます。"application/*" の対象となるアプリケーションは?
それとは別に、FireBug を使用していますか? ネットワーク ビュー内でヘッダーと応答の内容を確認できるため、これは絶対に不可欠です。
私はFirebugを使用するだけです。他の 100 の便利な機能と共に、JSON オブジェクトを単独で掘り下げることができます。
Json フィードのコンテンツ タイプは何ですか。テキストではなく、ある種のアプリケーションのように思えます。
Change the content type of the feed to something that is text based and FireFox will no longer try to open it in another program.
これは少し古い質問ですが、Railsのrespond_toメソッド(少なくとも3.1以降)は、問題のリソースにクエリparam'format'を追加することで、特定の形式でレンダリングするように説得できることを発見しました。例えば:
コントローラ内:
def show
@object = Object.find(params[:id])
respond_to do |format|
format.html
format.json { render json: @object }
end
end
ブラウザの場合:
/object/1 # => renders as html
/object/1?format=json # => renders as json
/object/1.json # => also renders as json
これを発生させるために、railsアプリを変更する必要はありません。それは魔法のようなものです。
JSON を application/json MIME タイプで送信することは正しく、それを変更することは間違っています。
text/javascript は廃止されたと見なされます。