Javascript 如何使用npm请求包发布原始车身
我想使用向服务发布请求。服务接受以逗号分隔的数字组成的请求正文,如Javascript 如何使用npm请求包发布原始车身,javascript,json,post,npm,request,Javascript,Json,Post,Npm,Request,我想使用向服务发布请求。服务接受以逗号分隔的数字组成的请求正文,如1,2,3,但当我发布请求时,正文为“1,2,3”,服务无法识别。我使用以下代码: import request from "request"; export function getIt(numbers) { return new Promise((resolve, reject) => { const uri = 'http://foo.bar/getIt'; const numbersBody
1,2,3
,但当我发布请求时,正文为“1,2,3”
,服务无法识别。我使用以下代码:
import request from "request";
export function getIt(numbers) {
return new Promise((resolve, reject) => {
const uri = 'http://foo.bar/getIt';
const numbersBody = numbers.join(',')
console.log('post body: ', numbersBody) // prints 1,2,3
request
.post(
uri,
{ json: true, rejectUnauthorized: false, body: numbersBody },
(err, httpResponse, body) => {
let error = err && err.message ? err.message : err;
if (body && body._error_code) {
error = body.message;
}
if (error) {
reject(error);
} else {
resolve(body);
}
}
)
});
当我用Wireshark检查网络流量时,我可以看到主体变成
“1,2,3”
。这似乎是因为请求包将其作为json对象写入。我尝试删除选项的json:true
部分,并尝试将其更改为false
,但这会引发异常。所以我不知道如何使字符串成为原始体,没有引号。有什么方法可以实现吗?你是否尝试将其作为数组而不是字符串发送?@baao是的,这使主体成为[1,2,3]
你是否尝试将其作为数组而不是字符串发送?@baao是的,这使主体成为[1,2,3]