首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当我使用headers.append(‘授权’,‘比勒’+this.AuthToken)时,我会出错;

当我使用headers.append(‘授权’,‘比勒’+this.AuthToken)时,我会出错;
EN

Stack Overflow用户
提问于 2017-06-20 17:02:41
回答 2查看 170关注 0票数 0

当我隐藏授权头时,它工作得很好,但是当我使用授权头时,我得到的error.Below是我的角2代码:

代码语言:javascript
复制
  getinfo() {
        return new Promise(resolve => {
            var headers = new Headers();
            this.loadUserCredentials();
            console.log(this.AuthToken);
            headers.append('Authorization', 'Bearer ' +this.AuthToken);
            //headers.append('Content-Type', 'application/x-www-form-urlencoded');

            this.http.get('http://ip/ramu/api/index.php?action=getUserInfo', {headers: headers}).subscribe(data => {
                if(data.json().success)
                    resolve(data.json());
                else
                    resolve(false);
            });
        })
    }

后端我使用的是php。我在下面给出的php页面中使用了标题

代码语言:javascript
复制
header("access-control-allow-origin: *"); header('content-type:
application/json; charset=utf-8');

在错误的下面我会得到

代码语言:javascript
复制
XMLHttpRequest cannot load http://ip/ramu/api/index.php?action=getUserInfo. Request header field Authorization is not allowed by Access-Control-Allow-Headers in preflight response.

我必须在后端做什么来允许基于令牌的授权,或者我需要添加任何角码?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-06-20 17:06:36

大多数非标准报头在CORS飞行前响应中需要白名单(就像原点一样),因此在后端:

代码语言:javascript
复制
header("Access-Control-Allow-Origin: *"); 
header("Access-Control-Allow-Headers: Authorization"); 
票数 1
EN

Stack Overflow用户

发布于 2017-06-20 17:26:42

您可以发送像这样的标题,以允许原点。

代码语言:javascript
复制
<?php
 header("Access-Control-Allow-Origin: *");
 header("Access-Control-Allow-Headers: *");
?>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44659097

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档