如何使用npm请求包

时间:2017-08-27 09:24:57

标签: javascript json post npm request

我想使用npm request package向服务发布请求。该服务接受逗号分隔数字的请求正文,例如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,但会引发异常。所以我不知道如何使字符串成为原始的主体,没有引号。有没有办法让这种情况发生?

0 个答案:

没有答案