application/json
application/x-javascript
text/javascript
text/x-javascript
text/x-json
我用哪一种,在哪里?我假设安全和浏览器支持问题是一个因素。
application/json
application/x-javascript
text/javascript
text/x-javascript
text/x-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/json
和application/xml
,但是这些功能的质量可能不同。哪个服务器会发送不同的响应格式,请参见以下示例:
Accept:application/json;q=0.4,application/xml;q=8
这将返回 XML, 因为 XML 质量更高 。
当然,对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);
}
};
你的问题的一部分 跟我有关 当我刚刚看到它。
第三方供应商正在提供一种供多个客户使用的REST服务。 它是一个直向前方的REST, 配有查询参数, 返回一个完善的JSON。 我用 PHP 和 Java 测试了它的工作原理。
我的客户用甲骨服务公交车作为他的应用程序服务器和互联网之间的通道。Invalid message format
错误。结果发现content-type
返回时text/html
OSB 将回复按此信头处理; 在文本、 XML 和 JSON 之间转换。 在此情况下, 回复是 JSON , 但信头没有这么说 。 联系提供者后, 我得到回复 : “ 我们不会改变它, 因为不会影响其他人 ” 。
缩略Content-Type
标题标题指定内容应:# # # 而不是什么 # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # #实际。这就是说,在您的消费程序中,您可以检查或忽略它,并以任何方式处理内容。另一个例子是,您可以返回 GIF 数据,但指定内容类型为 JSON,然后去忽略信头,读取图像数据。这不会伤害您的程序,但可能会伤害其他人。
故事的道德感:好好表现。