XMLHTTP请求错误的响应头

时间:2019-02-26 22:09:43

标签: javascript api curl request

我正在尝试请求api以获取令牌。 令牌在RespondHeader中,但是我的代码找不到。但是我会卷翘,所以可以肯定我缺少一些东西。 你能帮我吗?

这是卷曲的: 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 :(得分:0)

所以如果人们有同样的问题。它是服务器,没有跨域,因此缺少一些标头。

我通过添加

解决它

访问控制允许来源:*

谢谢

答案 1 :(得分:-1)

尝试替换

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

带有要求

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