2009-07-02 6 views
15

を開きます。私はこれがxhrの反応だと考えているので、これは決して起こらないはずです。誰もこれを見ましたか?JSONのXHR応答は、私たちのクライアントのいくつかは、彼らが「ファイルのダウンロード」プロンプトが.jsonの応答をダウンロードするようにユーザーに尋ねるを見ていることを訴えている(.json応答で)私たちのAJAX要求の一つは、ダウンロードファイルのポップアップウィンドウ

ありがとうございます。

+0

なぜファイル拡張子として.jsonを追加しますか?あなたのコード(IEでどこか他のヘッダを設定されていません 私は(オプションに行くFFに)あなたが.jsonファイルのための具体的なことを行うために、ブラウザを設定しない限り、それを行うことはできないと思います – nightingale2k1

答えて

11

応答でMIMEタイプ「text/plain」を指定してみてください。あるいは単に

+0

、これを指定する前に確認してくださいMIMEタイプをtext/plain以外のものとして指定します)。 – jellyfishtree

+0

この回答は、あなたが応答を支配していることを前提としています。 JSONで応答するサードパーティのWSを呼び出し、コンテンツタイプをgod forbids、jsonに設定するとどうでしょうか? – phtrivier

+0

はい、ContentTypeをtext/html(application/jsonから)に変更してくれました。私はいくつかの詳細とのブログ記事を投稿しました: http://blog.no/2012/09/jquery-json-ie8ie9-treats-response-as-downloadable-file/ – Andreas

-3

ドロップ(.TXTしてみてください、または.jsファイル、例えば)のURLから.jsonを「.json」の拡張子を削除し、text/htmlのようなコンテンツタイプを設定します。 IEはあなたがそれを送信しているファイルのタイプを知らないので、ダウンロードすることを提案します。これは、text/htmlの:)あなたが解決策を見つけたが、私はIEが任意のJS応答をダウンロードしようとした同様の問題があった場合はわからない

+1

いいえtext/htmlとしてのjson。 http://jibbering.com/blog/?p=514 – Cheeso

3

で何をすべきかを知っています。これを修正するには、format.htmlがレスポンスブロックのformat.jsの上に表示されていることを確認する必要がありました。

def index 

    # ... 

    respond_to do |format| 
    # html must be above js, otherwise IE will try to download the JS 
    format.html 
    format.js 
    end 
end 

希望します。 ASP MVCを使用し、IEと同じ問題を抱えている人々のため

+0

このソリューションは私のために働いた。理由は分かりません(他のブラウザは正常に動作しました)。 '受け入れ: –

+0

IEヘッダを受け入れる'受け入れ:画像/ gif形式、画像/ JPEG画像/ pjpeg、画像/ pjpeg、アプリケーション/ X-ショックウェーブフラッシュを、*/* ' Firefoxは、ヘッダを許可するテキスト/ HTML、アプリケーションを/xhtml+xml,application/xml;q=0.9、*/*; q = 0.8' q =は何を意味するのかよく分かっていませんが、その特定のタイプのコンテンツがどれくらい必要かとは関係があります。 –

16

、あなたの応答を返すとき、これを使用します。

return Json(result, "text/plain"); 

編集:「アプリケーション/ JSON」が、動作しません:標準タイプがありますIEで。 text/htmlを使用すると危険です。

+0

text/plainが技術的に正しくないので、@ jrharshathよりも良い答えです。これは、IEの古いバージョンのための巨大なハックだ。 –

1

私はQQのAjaxのファイルアップローダーを使用していると私は、私はそれが正しく動作するために、「テキスト/ JSON」にコンテンツタイプを設定するために必要なことがわかりました。

+0

私はこれを試みたが、それは私にはうまくいかなかった。 IE7はエンドポイントとして指定されたphpファイルをダウンロードしようとします。 –

関連する問題