javascript - 使用 MIME 类型 application/json 可能会导致什么问题?

标签 javascript json cross-browser content-type mime-types

我正在开发一个需要返回 JSON 数据的网络服务。 I read that I should use application/json但不确定这可能会导致什么问题?

例如,旧版浏览器会支持吗? (IE6+、FF、Opera 等)

或者公司防火墙/代理服务器后面的用户是否有可能阻止 mime 类型 application/json?

如果有的话,您在遵循这个建议时遇到了什么问题?

最佳答案

让我们考虑一下 IE。假设您有一个隐藏的 iFrame,您可以使用它来请求文件下载。例如

<iframe src="getFile?id=123">

现在,服务器可能会发送一个 JSON 编码的错误消息,例如

{
    error: 'File 123 does not exist',
    retryLater: false
}

如果该错误消息作为 application/json 发送,将出现下载对话框,因为 JSON 文本被误认为是实际文件。

另一方面,text/plain 的 MIME 类型会导致消息在 iFrame 中呈现,您可以提取它,并将其转换为精美的弹出窗口或其他内容使用 JScript。


(编辑)

现实世界的例子:EXTJS Fileupload - Problem with IE8 security bar

关于javascript - 使用 MIME 类型 application/json 可能会导致什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4792291/

相关文章:

javascript - JavaScript 中的 Set 是否保证稳定?

javascript - 从 javascript 添加 ASP.Net 标签,为什么会起作用?

javascript - 带有 css 和 javascript 的 HTML 背景

java - Angular JS $http.post 方法导致 JSON 数组格式错误

javascript - 将国家/地区 json 与 selectize 插件一起使用

javascript - dataModel URL javascript 函数不填充网格

ajax - 在wordpress中使用ajax返回JSON数据

html - Chrome 中的 CSS 三 Angular 形颗粒状和锯齿状

javascript - 在 Firefox 上使用 ajax 和 jQuery 单击时,编辑框文本不会被选中

php - JavaScript 从 iframe 获取浏览器中的 URL