赞
踩
$.ajax({
type:"post",
url:this.api.treeListUrl,
dateType:"json",
contentType : 'application/json',
success:function(result){
app.options=result.data;
console.log(app.treeList);
},
error:function(result){
}
});
1、application/x-www-form-urlencoded
浏览器参数截图:
参数要使用qs.stringify(params)转化为form表格格式,即Key-value。
后端接收参数时,不用加@RequestBody,controller接收可以单个参数接收,如@RequestParam("param") String param;也可以用类接收User user。
且可以完美解决后端springmvc框架中,使用@RequestBody时,就不能再接收单个参数的问题:
缺点:当后端接收List参数时,使用application/x-www-form-urlencoded格式后端无法接收,需要转换为application/json,且后端使用@RequestBody接收(因为测试了几种接收方式都不行)
2、application/json
浏览器参数截图:
注意:参数要经过JSON.stringify()转化为json格式
后端接收参数时,需要加@RequestBody
3、如果上传文件时使用:multipart/form-data
当action为post时候,浏览器把form数据封装到http body中,然后发送到server。 如果没有type=file的控件,用默认的application/x-www-form-urlencoded就可以了。 但是如果有type=file的话,就要用到multipart/form-data了。浏览器会把整个表单以控件为单位分割,并为每个部分加上Content-Disposition(form-data或者file),Content-Type(默认为text/plain),name(控件name)等信息,并加上分割符(boundary)。
注:
<form enctype="value">
值 | 描述 |
---|---|
application/x-www-form-urlencoded | 在发送前对所有字符进行编码(默认)。 |
multipart/form-data | 不对字符编码。当使用有文件上传控件的表单时,该值是必需的。 |
text/plain | 将空格转换为 "+" 符号,但不编码特殊字符。 |
4、如果传递xml格式数据,使用:text/xml
<methodCall>
<methodName>examples.getStateName<
/methodName
>
<params>
<param>
<value><i4>41<
/i4
><
/value
>
<
/param
>
<
/params
>
<
/methodCall
>
原文:https://www.javaxxbj.com/personalHomePage.html?id=1605858357886&userId=1578999242684
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。