我必须调用我们正在使用request库的api。
const options = {
uri: 'https://abcd.com',
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
'Authorization': 'Bearer xxxxxxxxx'
},
form: {
'a':1,
'b':2
}
}
request(options, (e, res, data) => {});
我该如何使用节点的https库重写相同内容。
我尝试将https库的https.request()与POST类型一起使用,并将.write与表单对象一起使用。没用 还将Content-Type更改为application / x-www-form-urlencoded,也无效
答案 0 :(得分:0)
您可以在以下网址阅读API文档:https://nodejs.org/api/https.html
下面的代码应该可以正常工作:
const https = require('https')
const data = JSON.stringify({
'a':1,
'b':2
})
const options = {
hostname: 'example.com',
port: 443,
path: '/',
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded'
'Content-Length': data.length
'Authorization': 'Bearer xxxxxxxxx'
}
}
const req = https.request(options, (res) => {
console.log(`statusCode: ${res.statusCode}`)
res.on('data', (d) => {
process.stdout.write(d)
})
})
req.on('error', (error) => {
console.error(error)
})
req.write(data)
req.end()
答案 1 :(得分:0)
此示例来自使用request包的文档,该表单接受一个对象,该对象由表单中的键值对组成
request.post('http://service.com/upload', {form:{key:'value'}})
// or
request.post('http://service.com/upload').form({key:'value'})
// or
request.post({url:'http://service.com/upload', form: {key:'value'}},
function(err,httpResponse,body){ /* ... */ })