2016-03-15 5 views
0

Вопрос, как и заголовок.Перейдите по URL-адресу с заголовком запрошенного запроса в javascript

В командной строке можно ввести

curl -H "header_name: header_value" "http://example" 

, чтобы перейти к http://example с костюмированным заголовка запроса, как показано выше.

В: Если мне нужно написать Javascript, чтобы сделать то же самое, как мне это сделать?

var url = 'https://example'; 
var myRequest = new XMLHttpRequest(); 
myRequest.open('GET', url ,false); 
myRequest.setRequestHeader('header-name','header-value'); 
myRequest.send(); 

Я пробовал этот код, нет синтаксической ошибки, но страница не изменилась. Следовательно, я не знаю, изменил ли я заголовок (ы) запроса.

+0

Есть много ответов уже на этот вопрос http://stackoverflow.com/questions/1268673/set-a- request-header-in-javascript –

+0

@VitalyKulikov Thx для комментариев, я провел некоторое исследование, прежде чем опубликовать этот вопрос, но кажется, что они не помогают. Ответы в вашей ссылке не помогут. Я поделился своим кодом в вопросе, надеюсь, что это поможет. –

+0

Вы сделали запрос, но вы ничего не сделали с ответом, поэтому страница не изменилась –

ответ

1

Вот как вы можете справиться с этим:

var req = new XMLHttpRequest(); 
 
req.open('GET', 'http://example', true); //true means request will be async 
 
req.onreadystatechange = function (aEvt) { 
 
    if (req.readyState == 4) { 
 
    if(req.status == 200) 
 
     //update your page here 
 
     //req.responseText - is your result html or whatever you send as a response 
 
    else 
 
     alert("Error loading page\n"); 
 
    } 
 
}; 
 
req.setRequestHeader('header_name', 'header_value'); 
 
req.send();

+0

Большое спасибо, это помогает мне понять использование XMLHttpRequest(). Еще один вопрос, поддерживает ли он добавление запрошенного запроса? например заголовок запроса «x-api-key», который обычно появляется в каждом заголовке запроса. –

+0

Да, в моем ответе есть пример 'req.setRequestHeader ('header_name', 'header_value');' –

+0

Я пробовал свой код с помощью 'window.location.href = url;' для обновления моей страницы. Веб-сайт перемещается на «url», однако заголовок запроса не применяется. Я использую неправильный способ обновления страницы? –