繁体   English   中英

XMLHttpRequest无法加载。 飞行前响应中Access-Control-Allow-Headers不允许使用请求标头字段密码

[英]XMLHttpRequest cannot load. Request header field password is not allowed by Access-Control-Allow-Headers in preflight response

执行ajax请求时收到以下错误消息

XMLHttpRequest cannot load. Request header field password is not allowed by Access-Control-Allow-Headers in preflight response.

在此处输入图片说明

我将以下内容用作dojo的标头:

        'Authorization': 'Bearer ' + this.data.token,
        'X-Requested-With': null,
        'If-None-Match': null,
        'Password': this.data.oneTimePassword

下图来自Chrome的Response Header。

我想知道:

  • 您能否确认问题与不包含自定义标头password Access-Control-Allow-Headers

  • 如果端点仅支持方法GET,则响应头中的Access-Control-Allow-Methods: GET, POST, PUT, OPTIONS是否正确,而不应该仅是Access-Control-Allow-Methods: GET

目前,我正在使用dojo/store/JsonRest但我认为问题与API有关,而与dojo本身无关。

“与Access-Control-Allow-Headers有关的问题不包含自定义标头密码吗?

是。 错误消息明确指出。

如果端点仅支持方法GET,我的API中的Access-Control-Allow-Methods是否正确?

FSVO正确。

它允许GET,因此您可以发出GET请求。

它还允许其他方法,如果浏览器尝试使用其中一种方法发出请求,则服务器可能会抛出405。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM