14

对于我们的一个 ajax 请求(带有 .json 响应),我们的一些客户抱怨他们看到“文件下载”提示要求用户下载 .json 响应。我很困惑,因为考虑到这是一个 xhr 响应,这永远不会发生。有人见过这个吗?

谢谢

4

5 回答 5

16

对于使用 ASP MVC 并在 IE 上遇到相同问题的人,在返回响应时使用此:

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

编辑:标准类型是:“application/json”,但不适用于 IE。使用 text/html 是危险的。

于 2011-06-24T14:40:35.220 回答
11

尝试在响应中指定“text/plain”的 MIME 类型。或者只是从 url 中删除“.json”扩展名(例如,尝试 .txt 或 .js)

于 2009-07-02T05:30:28.840 回答
3

不确定您是否找到了解决方案,但我遇到了类似的问题,即 IE 尝试下载任何 JS 响应。要修复它,我必须确保 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

希望这可以帮助。

于 2009-08-26T08:38:30.810 回答
1

我正在使用 QQ ajax 文件上传器,我发现我需要将内容类型设置为“text/json”才能正常工作。

于 2013-01-18T14:46:13.527 回答
-3

删除 .json 并将内容类型设置为 text/html。IE 不知道你发送的是什么类型的文件,所以它提供下载。它知道如何处理 text/html :)

于 2009-08-03T17:47:51.810 回答