JS AJAX数据传递方式

JS AJAX数据传递方式

在Javascript语法中,{“foo”:“bar”}等效于{foo:“bar”}。

jax有三种传递传递data的方式:

json格式

json字符串格式

标准参数模式

1.json格式形如:

{“username”:”chen”,”nickname”:”alien”}

$.ajax({

type: "post",

url: "/test/saveUser",

data: {

"username": "chen",

"nickname": "alien"

},

dataType: "json",

success: function(data) {

console.log(data);

}

});

2.json字符串

形如:

“{“username”:”chen”,”nickname”:”alien”}” 或者JSON.stringify({“username”:”chen”,”nickname”:”alien”})

$.ajax({

type: "post",

url: "/test/saveUser",

data: JSON.stringify({

"username": "chen",

"nickname": "alien"

}),

contentType: "json/application"

dataType: "json",

success: function(data) {

console.log(data);

}

});

用此格式get请求参数传递不过去,不会把json串解析成参数

而且需要添加 contentType:”json/application”

3.标准参数模式

形如:

“username=chen&nickname=alien

$.ajax({

type: "post",

url: "/test/saveUser",

data: "username=chen&nickname=alien",

dataType: "json",

success: function(data) {

console.log(data);

}

});

$(“#form1”).serialize() 就是把表单的数据拼成这个格式的字符串!

总结:

post请求能用1、2、3类型传递参数

get请求能用1、3类型传递参数

$(“#form1”).serialize() 是将对应表单中的input的name和value进行拼装,最后拼成3类型的字符串

总结一下ajax请求能够发送的数据格式:

(1)&连接的key=value,适用于GET和POST请求,此时contentType必须为application/x-www-form-urlencoded,后端不能使用@RequestBody注解

(2)json对象,适用于GET和POST请求,且此时contentType必须为application/x-www-form-urlencoded,ajax会自动将 json对象转化为&连接的key=value格式的数据,GET请求就拼接在url后面,POST请求就放入post请求体中,后端不能使用@RequestBody注解

(4)json字符串,只适用于POST请求,且此时contentType必须为application/json,后端必须使用@RequestBody注解

相关文章

5.5英寸等于多少厘米?
bt365无法登陆

5.5英寸等于多少厘米?

📅 07-18 👁️ 2318
做人工股骨头双髋关节置换手术的费用是多少
beta365官网app下载

做人工股骨头双髋关节置换手术的费用是多少

📅 07-06 👁️ 4696
杭州有哪些重点高中学校2025年最新(名单+排名)
beta365官网app下载

杭州有哪些重点高中学校2025年最新(名单+排名)

📅 07-21 👁️ 3731