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
我用哪一种,在哪里?我假设安全和浏览器支持问题是一个因素。
当前回答
JSON是一个域内特定语言(DSL)和独立于 JavaScript 的数据格式,因此具有自己的米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米米类型,application/json
尊重MIME类型当然是由客户驱动的,所以text/plain
可能是为了传输字节, 但你会不必要地把解释 推到供应商申请域application/json
。您是否会通过text/plain
?
但说实话,你选择MIME类型 是建议客户 如何解读数据text/plain
或text/HTML
(当它不是 HTML ) 就像类型擦除—— 它和用打印语言制作所有类型对象一样没有信息规范。
我知道没有浏览器运行时间会使用 JSON 文档, 并自动在运行时作为 JavaScript 无障碍对象自动提供, 无需干预, 但如果你和一个残废的客户合作, 那完全是另一回事。 但这不是整个故事-休息时间JSON服务通常没有 JavaScript 运行时, 但是它并不阻止他们使用JSON作为可行的数据交换格式。 如果客户是那么残废的话... 那么我想也许通过 HTML 注射阿贾克斯代替为诱惑服务。
申请/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) 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/javascript
MIME型也不错
请注意text/javascript
被标记为过时的RFC 4329(媒体类型)文档,建议使用application/javascript
类型。然而,由于遗留原因,text/javascript
它仍然被广泛广泛使用,并有交叉浏览器支持(这并不总是在application/javascript
MIME类型,特别是使用较老的浏览器)。
IANA 亚非那JSON 正式注册的 MIME 类型为 JSONapplication/json
.
当被问及为何不问时text/json
Crockford似乎已经说Jsonon其实不是 JavaScript 或文本,application/*
大于text/*
.
更多资源:
当然,对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);
}
};
为具体说明有趣的JSON结果,请在请求页眉中加入“申请/json”,如下文所示:
“接受:申请/json”是一种理想的反应格式。
“Cententent-Type: application/json”指定了您请求的内容格式,但有时您指定了两种格式application/json
和application/xml
,但是这些功能的质量可能不同。哪个服务器会发送不同的响应格式,请参见以下示例:
Accept:application/json;q=0.4,application/xml;q=8
这将返回 XML, 因为 XML 质量更高 。
“application/json
”是正确的JSON内容类型。
def ajaxFindSystems = {
def result = Systems.list()
render(contentType:'application/json') {
results {
result.each{sys->
system(id:sys.id, name:sys.name)
}
}
resultset (rows:result.size())
}
}