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
。默认编码是 UTF-8,但值得一提的是,它也可以是 UTF-16 或 UTF-32. 当 JSON 以 UTF-16 或 UTF-32 书写时,必须使用二进制内容转移编码。
有关JSON在RFC 4627: JavaScript 对象标记(JSON)的应用/json媒体类型
有关二进制传输编码的更多信息正在打开5. 内容转让-编码信头字段(RRC 1341)。
其他回答
这取决于观点。
如果您是寄件请求的客户端,application/json
是正确的选择。
但如果您是收到请求的服务器, 您必须做好准备, 客户端也可以发送编码 。 因此, 请准备 。application/json
和application/json; charset=utf-8
有效。
两种情况下媒体类型相同。 但内容类型不同 。
内春春您有一个定义型号 :MediaType.APPLICATION_JSON_VALUE
等于申请/日文.
“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())
}
}
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);
}
};