首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角9前端/corsheaders django 3向后-将CORS头追加到请求中

角9前端/corsheaders django 3向后-将CORS头追加到请求中
EN

Stack Overflow用户
提问于 2020-07-09 16:14:18
回答 1查看 177关注 0票数 0

有问题,找到一种方法,如何正确配置前端应用程序的角9,消费背部REST网络服务。在带有静态IP的远程服务器上,我使用的是角驱动服务器(我知道这只是出于开发目的,但我想首先消除这个错误)。

ng serve --host 0.0.0.0 --port 80

这样我才能从外面进入。然后,我的django应用程序也与dev服务器在

127.0.0.1:8000

在角service.ts文件中,我试图注入标头

代码语言:javascript
复制
export class FlightService {

  httpOptions = { 
    headers: new HttpHeaders({
      'Access-Control-Request-Method':'GET',
      'Access-Control-Request-Headers':'origin, x-requested-with, accept'
    })
  };

  private endpoint = 'http://127.0.0.1:8000/services';

  constructor(private http: HttpClient) { }
  //GET All Services
  getAllServices(): Observable<any>{
    return this.http.get(this.endpoint, this.httpOptions)
  }
}

在我的django后端的settings.py中,我将corsheaders模块放在顶部:

代码语言:javascript
复制
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
...

并且允许所有的主机(在用白名单尝试了很多事情之后,这些东西都不起作用:

代码语言:javascript
复制
CORS_ALLOW_CREDENTIALS = False 

CORS_ALLOW_METHODS = [
 #   'DELETE',
    'GET',
    'OPTIONS'
    #'PATCH',
    #'POST',
    #'PUT',
]


CORS_ALLOW_HEADERS = [
    'accept',
    'accept-encoding',
    'authorization',
    'content-type',
    'dnt',
    'origin',
    'user-agent',
    'x-csrftoken',
    'x-requested-with',
    'x-forwarded-for'
]

但我总是失败。添加httpOptions后,在浏览器中得到错误:

"Access-Control-Request-Method" http.js:2403拒绝设置不安全的标头

同时:

"Access-Control-Request-Headers"拒绝设置不安全的标头

所以至少我知道它的角度是试图附加它。

请帮帮忙,怎么接近它?我想问题在客户端。我还尝试用一个代理来设置Nginx,使其成为append,但也未能在Nginx配置中附加标题。

EN

回答 1

Stack Overflow用户

发布于 2020-07-09 19:00:44

这些CORS标头不供您设置,如果浏览器检测到您试图访问跨域资源,它将自动进行设置。

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

https://stackoverflow.com/questions/62819214

复制
相关文章

相似问题

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