XMLHTTP Запрос плохого ответа - PullRequest
0 голосов
/ 27 февраля 2019

Я пытаюсь запросить API для получения токена.Маркер находится в RespondHeader, но мой код не находит его.Но я получаю это с помощью curl, так что я уверен, что что-то упустил.Вы можете мне помочь?

это curl: curl -i -X POST -H "Content-Type:application/json" http://127.0.0.1:8080/login -d '{"username":"poulet", "password":"poulet"}'

И вот что я получаю

HTTP/1.1 200 
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzUxMiJ9.eyJzdWIiOiJwb3VsZXQiLCJleHAiOjE1NTEzMDUxNDJ9.NTKyMKEKTnRDU-TzcG6WlNYVCjgQ91vBgK4SbTFECenRH_GCllxA-dPogx3RQ0XH0eCwH7LpCU8Ttyxb2idl_Q
X-Content-Type-Options: nosniff
X-XSS-Protection: 1; mode=block
Cache-Control: no-cache, no-store, max-age=0, must-revalidate
Pragma: no-cache
Expires: 0
X-Frame-Options: DENY
Content-Length: 0
Date: Tue, 26 Feb 2019 22:05:42 GMT

Теперь это мой код Javascript

const req = new XMLHttpRequest();
req.open('POST', 'http://127.0.0.1:8080/login', true);
req.setRequestHeader("Content-Type", "application/json");
req.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
        console.log(this.getAllResponseHeaders());
        console.log(this.getResponseHeader("Authorization"));
    }
};
console.log(req);
req.send(JSON.stringify({username : "poulet", password : "poulet"}));

и вот что я получаю

контроль кеша: без кеша, без хранилища, max-age = 0, срок действия обязательной повторной проверки: 0 прагма: без кеша

ноль

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 28 февраля 2019

Так что если у людей такая же проблема.Это был сервер, у него не было перекрестного источника, и поэтому некоторые заголовки отсутствовали.

Я решаю его, добавив

Access-Control-Allow-Origin: *

Спасибо

0 голосов
/ 27 февраля 2019

попробуйте заменить этот

console.log(this.getResponseHeader("Authorization"));

на req

console.log(req.getResponseHeader("Authorization"));

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...