我正在使用node + express构建一个应用程序,我正在发出一个POST请求,我发布了一个字符串数组。但是,当我在服务器端打印出请求正文时,对象属性会更改:
var test_array = ['1', '2', '3', '4'];
$.ajax({
type: 'POST',
url: 'some_url/',
headers: {
'x-access-token': 'some_token'
},
data: {
myArray: test_array
},
success: function () {
console.log('success!');
},
error: function (a, b, c) {
console.log(a);
console.log(b);
console.log(c);
}
});
但是,当我在服务器端注销请求时,我得到:
console.log(req.body);
{ 'myArray[]': [ '1', '2', '3', '4' ] }
有谁知道为什么myArray
在服务器端成为myArray[]
?提前致谢!
答案 0 :(得分:0)
您可以在contentType: 'application/json'
发布请求中添加dataType: 'json'
和ajax
,将数据json
发布到服务器,如下所示
var test_array = ['1', '2', '3', '4'];
$.ajax({
type: 'POST',
url: 'some_url/',
headers: {
'x-access-token': 'some_token'
},
contentType: 'application/json',
dataType: 'json',
data: {
myArray: test_array
},
success: function () {
console.log('success!');
},
error: function (a, b, c) {
console.log(a);
console.log(b);
console.log(c);
}
});