有许多“标准”为“标准”Json Json (Json Json) (Json Json Json) (Json Json) Json Json (Json Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json(Json) Json (Json) Json (Json) Json(Json) Json (Json) Json内容类型 :

application/json
application/x-javascript
text/javascript
text/x-javascript
text/x-json

我用哪一种,在哪里?我假设安全和浏览器支持问题是一个因素。

相关:如果JSON被AST API送回来 是什么MIME类型?


当前回答

Json Json (Json Json) (Json Json Json) (Json Json) Json Json (Json Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json(Json) Json (Json) Json (Json) Json(Json) Json (Json) Json(JavaScript 对象注释)和贾索普格式似乎非常相似,因此可能非常混淆它们应该使用哪种MIME类型。尽管格式相似,但两者之间有一些微妙的差别。

因此,每当有任何疑问时,我有一个非常简单的方法(在多数情况下完全正常),即去检查相应的RFC文件。

Json Json (Json Json) (Json Json Json) (Json Json) Json Json (Json Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json (Json) Json(Json) Json (Json) Json (Json) Json(Json) Json (Json) Json RFC 4627(JavaScript 对象标记(JSON)的应用/json媒体类型)是JSON格式的规格。

application/json.

贾索普JSONP (“有垫板的JSson”) 在一个浏览器中处理的方式不同于 JSson 。 JSONP 被当作普通 JavaScript 脚本处理, 因此它应该使用application/javascript,JavaScript 的当前正式 MIME 类型。 但是,在许多情况下,text/javascriptMIME型也不错

请注意text/javascript被标记为过时的RFC 4329(媒体类型)文档,建议使用application/javascript类型。然而,由于遗留原因,text/javascript它仍然被广泛广泛使用,并有交叉浏览器支持(这并不总是在application/javascriptMIME类型,特别是使用较老的浏览器)。

其他回答

当然,对JSON来说正确的MIME媒体类型是application/json,但有必要了解在您的应用程序中预期会收到何种类型的数据。

例如,我使用Ext GWT 离 GWT服务器响应必须以文本/ html但包含JSON的数据。

客户端, Ext GWT 窗体收听器

uploadForm.getForm().addListener(new FormListenerAdapter()
{
    @Override
    public void onActionFailed(Form form, int httpStatus, String responseText) 
    {
        MessageBox.alert("Error");
    }

    @Override
    public void onActionComplete(Form form, int httpStatus, String responseText) 
    {
        MessageBox.alert("Success");
    }
});

使用申请/日文响应类型,浏览器建议我保存文件。

服务器侧端源代码片断使用春春MVC

return new AbstractUrlBasedView() 
{
    @SuppressWarnings("unchecked")
    @Override
    protected void renderMergedOutputModel(Map model, HttpServletRequest request,
                                           HttpServletResponse response) throws Exception 
    {
        response.setContentType("text/html");
        response.getWriter().write(json);
    }
};

毫无疑问,application/json是最好的米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米JSON 响应类型。

但我有一些经验 在那里我不得不使用application/x-javascript由于某些压缩问题,我的托管环境与戈地( GoDadd)。他们不允许我更改服务器配置。web.config压缩回复文件 。

<httpCompression>
    <scheme name="gzip" dll="%Windir%\system32\inetsrv\gzip.dll"/>
    <dynamicTypes>
        <add mimeType="text/*" enabled="true"/>
        <add mimeType="message/*" enabled="true"/>
        <add mimeType="application/javascript" enabled="true"/>
        <add mimeType="*/*" enabled="false"/>
    </dynamicTypes>
    <staticTypes>
        <add mimeType="text/*" enabled="true"/>
        <add mimeType="message/*" enabled="true"/>
        <add mimeType="application/javascript" enabled="true"/>
        <add mimeType="*/*" enabled="false"/>
    </staticTypes>
</httpCompression>
<urlCompression doStaticCompression="true" doDynamicCompression="true"/>

通过使用这个, . aspx 页面被压缩为 g- zip, 但 JSON 没有回应 。 我添加了 。

<add mimeType="application/json" enabled="true"/>

在静态和动态类型区域中。但这并不压缩JSON的反应。

在那之后,我删除了这个新添加的类型,并添加了

<add mimeType="application/x-javascript" enabled="true"/>

在静态和动态两种类型的章节中都采用静态和动态两种类型,并更改了

.ashx (非同步处理器) to

application/x-javascript

现在我发现我的JSON反应 压缩了G-zip。所以我个人建议使用

application/x-javascript

只有在您想要压缩 JSON 回应 a共享托管环境。因为在共享主机中,它们不允许您更改IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS IIS配置。

为具体说明有趣的JSON结果,请在请求页眉中加入“申请/json”,如下文所示:

“接受:申请/json”是一种理想的反应格式。

“Cententent-Type: application/json”指定了您请求的内容格式,但有时您指定了两种格式application/jsonapplication/xml,但是这些功能的质量可能不同。哪个服务器会发送不同的响应格式,请参见以下示例:

Accept:application/json;q=0.4,application/xml;q=8

这将返回 XML, 因为 XML 质量更高 。

春春您有一个定义型号 :MediaType.APPLICATION_JSON_VALUE等于申请/日文.

最常见的MIME 类型这是应用程序/json。 这是所有 JSON 内容类型的列表 :

过时类型 :

  • Content-Type: text/javascript - JavaScript 但是,但用于 HTML 属性的旧的因特网探索者版本。
  • Content-Type: text/x-javascript- JavaScript媒体类型,但是,但过时