gpt4 book ai didi

javascript - 使用 application/x-www-form-urlencoded 使用 node.js 在发布请求中发送数组

转载 作者:行者123 更新时间:2023-11-30 08:38:19 26 4
gpt4 key购买 nike

我尝试向 API 发送 post 请求,post 参数应该是数组,这是在 cURL 中发送的方法

curl http://localhost:3000/check_amounts
-d amounts[]=15 \
-d amounts[]=30

我尝试使用请求模块在 Node.js 中做到这一点

request.post('http://localhost:3000/check_amounts', {
form: {
'amounts[]': 15 ,
'amounts[]': 30
}
}, function(error, response, body) {
console.log(body)
res.json(body);
});

但是第二个数量覆盖了第一个数量并且 API 得到如下结果:amounts = [30]

然后我尝试用不同的方式发送它

 request.post('http://localhost:3000/check_amounts', {
form: {
'amounts[]': [ 15 , 30]
}
}, function(error, response, body) {
console.log(body)
res.json(body);
});

但结果不是预期的 amounts = [{"0":15},{"1":30}]

注意: header 应包含“Content-Type”:“application/x-www-form-urlencoded”而不是“application/json”

有人解决这个问题吗?

最佳答案

阅读请求手册就很容易了。您应该做的就是用 querystring 而不是 object 替换表单,在您的情况下这应该是:

amounts=15&amounts=30

我唯一不确定的是上述表达式在您的网络服务器中是否有效。据我所知,它在 java struts 中运行良好。所以如果不是你可以试试amounts[]=15&amounts[]=30 而不是。希望对您有所帮助。

关于javascript - 使用 application/x-www-form-urlencoded 使用 node.js 在发布请求中发送数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29384661/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com