我一直在忙着JSON一段时间,只是把它作为文本推出它并没有伤害任何人(我知道),但我想开始正确地做事.
我见过这样的JSON内容类型很多所谓的"标准":
application/json
application/x-javascript
text/javascript
text/x-javascript
text/x-json
Run Code Online (Sandbox Code Playgroud)
但哪个是正确的,还是最好的?我认为它们之间存在安全性和浏览器支持问题.
我知道有一个类似的问题,如果REST API返回JSON,那么MIME类型是什么?,但我想要一个稍微有针对性的答案.
有什么区别
contentType: "application/json; charset=utf-8",
dataType: "json",
Run Code Online (Sandbox Code Playgroud)
与
contentType: "application/json",
dataType: "text",
Run Code Online (Sandbox Code Playgroud) 我需要将带有ajax参数的'+'字符传递给我的控制器.
带参数的Ajax Call包含'+'字符.
var subsNumbers = '+94'
var url = 'getList?subsNums='+subsNumbers;
$.ajax({
url:url,
type:'POST',
dataType:'json',
success:function (saveResponse) {
....
}
});
Run Code Online (Sandbox Code Playgroud)
在我的控制器(Spring控制器类)中,
String deviceNumbers = request.getParameter("subsNums");
logger.debug("deviceNumbers-->{}", deviceNumbers);
Run Code Online (Sandbox Code Playgroud)
'+'字符已替换为空格.实际结果是
deviceNumbers--> 94
Run Code Online (Sandbox Code Playgroud)
预计是
deviceNumbers-->+94
Run Code Online (Sandbox Code Playgroud)