我试图发送一个GET请求到一个用户通行证保护的API。我使用Javascript并添加了一个 "auth "选项。
const https = require('https');
const headers= {
'Accepts' : 'application/json',
}
const options = {
hostname: 'api.com/more/info',
port: 443,
path: '/',
auth: 'username:password',
method: 'GET'
};
const req = https.request(options, (res) => {
console.log('statusCode:', res.statusCode);
console.log('headers:', res.headers);
res.on('data', (d) => {
process.stdout.write(d);
});
});
req.on('error', (e) => {
console.error(e);
});
req.end();
当这段代码运行时,我收到的错误信息是。
Error: getaddrinfo ENOTFOUND api/com/more/info
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:66:26) {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'api.com/more/info'
}
主机名已被更改为匿名。
我到底做错了什么?
先谢谢你的建议。
'api.com/more/info'
可能不是你的主机名。
试着用这些选项代替。
const options = {
hostname: 'api.com',
port: 443,
path: '/more/info',
auth: 'username:password',
method: 'GET'
};
Bertrand Marron说的很对 在 "Path "中添加moreinfo就解决了这个问题。谢谢你