【发布时间】:2018-08-03 17:08:54
【问题描述】:
我在 node.js 上使用request-promise-native 模块。我正在调用的 API 需要标题中的键以及 Content-Type: Application/json。当使用邮递员进行测试时,我必须使用 Body > raw 来传递必要的参数。这工作得很好。
但是,当我尝试对请求库进行相同操作时,正文未正确提交。这是我尝试过的:
const request = require('request-promise-native')
let options = {
method: 'POST',
uri: 'https://api.com',
headers: {
'X-Api-Key': <key>,
'Content-Type': 'Application/json'
}
}
options.body = {
key1: 'value1',
key2: 'value2'
}
// and since the above didn't work also this:
options.form = {
key1: 'value1',
key2: 'value2'
}
request(options)
.then(function(res){ /* do something */}
我确实得到了响应,但不是基于正文参数。如何复制“原始”身体?
【问题讨论】:
-
嘿,你能把
json: true添加到那个options对象并尝试一下吗? -
或者你可以试试,
Content-Type: 'application/x-www-form-urlencoded'看看它是否有效。 -
@AritraChakraborty 谢谢,这解决了问题。想要发布它作为答案?
-
@AritraChakraborty
json: true解决了它 -
当然。发布它