ajax 中application/json,ajax请求头添加contentType:“application/json“的作用
请求例子:
$.ajax({
dataType:'json',
url:"../rest/test",
dataType:"JSON",
async:false,
type:"POST",
contentType:"application/json", //
data:JSON.stringify({"id":"1"}), //如果不添加 contentType:"application/json" 则data必须是json对象,应该是{"id":"1"}
success : function(result){
console.log(result);
if(result.successful){
alert("删除成功!");
getTableData();
}else{
alert("删除失败!");
}
},
error:function(){
alert("删除失败!");
}
请求端:如果添加contentType:"application/json" ,则请求参数是json格式的字符串。如果不添加,入参是json对象。
接收端:
不添加添加contentType:"application/json":
方法一:
@RequestMapping(value = "/test", method = RequestMethod.POST)
public @ItemResponseBody Object removeProject(HttpServletRequest request) {
BufferedReader reader = null;
String line = "";
String xmlString = null;
try {
reader = request.getReader();
StringBuffer inputString = new StringBuffer();
while ((line = reader.readLine()) != null) {
inputString.append(line);
}
xmlString = inputString.toString();
} catch (Exception e) {
// throw new YppException(PayException.xmlParseError);
}
Map result = new HashMap();
result.put("result","succes");
return result;
}
方法二:
@RequestMapping(value = "/test", method = RequestMethod.POST)
public @ItemResponseBody Object editProject(@RequestBody Map map) {
String id=map.get("id").toString();
Map result = new HashMap();
result.put("result","succes");
return result;
}
添加添加contentType:"application/json":
@RequestMapping(value = "/test", method = RequestMethod.POST)
public @ItemResponseBody Object getCommonValue(HttpServletRequest request) {
String sspm = request.getParameter("id")==null?"":request.getParameter("id");
Map result = new HashMap();
result.put("result","success");
return result;
}
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐


所有评论(0)