const URL = 'https://www.imdb.com/title/tt0816222/?
ref_ = fn_al_tt_2 ';
(async() => {
const response = await request({
uri: URL,
headers: {
'Connection': 'keep-alive',
'User-Agent': 'Mozilla/0.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'
},
});
Мне нужна помощь от этого кода. Как я могу получить значения заголовка ответа в консоли кода Visual Studio для следующего сайта.
Пожалуйста, добавьте весь код в сам вопрос, а не в раздел комментариев.
если мой ответ был полезен, пожалуйста, отметьте его как правильный.
принять ответ, если найдено правильное решение.
@Ariz, это то, что я имел в виду на самом деле ... мне не хватает этого слова в то время: D
@ElmerDantas до сих пор не отвечает. :D
@Ariz, первый голос мог исходить от него ... в любом случае, просто интересно, удастся ли ему решить.
@ElmerDantas, он ответил на мое решение, что оно сработало, поэтому я ПРЕДПОЛАГАЮ, что это сработало.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы получите заголовки ответа в response.headers
Но там написано не определено?
console.info(ответ.заголовки); Или console.info(response.headers['user-agent']); пробовал оба, но ничего не работает
Я думаю, проблема в том, что модуль запроса не возвращает обещание. Он принимает обратный вызов. Поэтому в этом случае вы не можете использовать синтаксис асинхронного ожидания.
так что делать? Есть ли какой-нибудь метод?
Печатайте вот так
console.info(response.headers)
const request = require('запрос-обещание'); const приветствие = требуется ('приветствие'); постоянный URL = 'imdb.com/title/tt0816222/?ref_=fn_al_tt_2'; (async () => { const response = await request({ uri:URL, headers:{ 'Connection': 'keep-alive', 'User-Agent': 'Mozilla/0.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, как Gecko) Chrome/71.0.3578.98 Safari/537.36' }, }); console.info(response.headers); })()
Этот код печатает заголовки:
const URL = 'https://www.imdb.com/title/tt0816222/?ref_ = fn_al_tt_2';
const request = require('request');
(async () => {
const response = await request({
uri: URL,
headers: {
'Connection': 'keep-alive',
'User-Agent': 'Mozilla/0.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'
},
});
console.info(response.headers);
})();
Просто обработайте обещание из библиотеки request
request({
uri: 'https://www.imdb.com/title/tt0816222/?',
headers: /*your headers*/
})
.then(function(response){
console.info(response.headers)
})
То же самое с async/await
@CristianTraìna Я просто смотрю на его комментарий, где написано require('request-promise'), и предполагаю, что async/await не поддерживается, поэтому я опубликовал подход Promise.
@ElmerDantas, почему асинхронное ожидание не поддерживается с запросом-обещанием? он возвращает только обещание.
@Ariz Я сказал «я предполагаю», что это не поддерживается. Просто предположение. Единственная причина для публикации подхода Promise.
Потому что вы просто получаете тело ответа от запроса npm.
добавить resolveWithFullResponse: true в параметры запроса.
const URL = 'https://www.imdb.com/title/tt0816222/?
ref_ = fn_al_tt_2 ';
(async() => {
const response = await request({
uri: URL,
headers: {
'Connection': 'keep-alive',
'User-Agent': 'Mozilla/0.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'
},
resolveWithFullResponse: true
});если вам нужны только заголовки
const URL = 'https://www.imdb.com/title/tt0816222/?
ref_ = fn_al_tt_2 ';
(async() => {
const {headers} = await request({
uri: URL,
headers: {
'Connection': 'keep-alive',
'User-Agent': 'Mozilla/0.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'
},
resolveWithFullResponse: true
});
console.info(headers)спасибо, брат, теперь это сработало, как мы можем получить заголовки запроса вместо ответа и как мы можем получить только одно конкретное значение заголовка и сохранить его в переменной?
теперь response.header — это просто собственный объект, поэтому вы можете просто сделать response.header['content-type'] и т.д., здесь вы получите значение заголовка content-type. обновленный ответ, если вам нужен только заголовок.
Покажите нам, что вы пробовали?