所以,我试图获取传递给funcion的URL的http状态代码。到目前为止,我已经使用了请求模块,但问题是请求获取了给定URL的所有内容,如果内容是大量数据,那么它很慢,但我只需要获取状态用于制作if语句的代码。
request(audioURL, function (error, response) {
if (!error && response.statusCode == 200) {
queue.push({
title: videoTitle,
user: message.author.username,
mention: message.author.mention(),
url: audioURL
});
bot.reply(message, "\"" + videoTitle + "\" has been added to the queue.")
}
else {
bot.reply(message, "Sorry, I couldn't get the audio track for that video. HTTP status code: " + response.statusCode);
}
});
这是我到目前为止.audioURL是一个基本字符串,带有媒体文件的链接
答案 0 :(得分:2)
http.request
可以将options
对象作为其第一个参数。使用这样的东西:
const options = {
method: 'HEAD',
host: 'example.com',
};
const req = http.request(options, (res) => {
console.log(JSON.stringify(res.headers));
});
req.end();
问题是,您希望将audioURL
转换为其组件,以options
作为参数传递。我使用HEAD
方法,只提取您请求的标头。