【问题标题】:Prototype.js - cannot see added headers in request details in browserPrototype.js - 在浏览器的请求详细信息中看不到添加的标头
【发布时间】:2015-12-14 04:52:48
【问题描述】:

我想向 Ajax.Request 添加一些标头。我创建了 requestHeader 对象:

requestHeaders: {
     'Access-Control-Allow-Origin': '*',
     'Access-Control-Allow-Methods': 'GET,POST,PUT,DELETE,OPTIONS',
     'Access-Control-Allow-Headers': 'Access-Control-Allow-Origin'
}

但在我的请求中看不到这些标头(检查浏览器)。在控制台中,我看到了错误:

“XMLHttpRequest 无法加载http://my_domain.com?some_parameters。Access-Control-Allow-Headers 不允许请求标头字段 Access-Control-Allow-Origin。”

如何解决这个问题?

【问题讨论】:

    标签: javascript ajax prototypejs request-headers


    【解决方案1】:

    基于这个带有最新版本 (1.7.2) 的 github Pull Request,您应该能够删除 Prototype 添加到 Ajax 请求的额外 X-* 标头。

    我认为这将解决您遇到的问题,因为有 2 个标头会导致 CORS 请求出现问题,X-Requested-WithX-Prototype-Version

    所以使用相同的 headers 对象

    requestHeaders: {
     'Access-Control-Allow-Origin': '*',
     'Access-Control-Allow-Methods': 'GET,POST,PUT,DELETE,OPTIONS',
     'Access-Control-Allow-Headers': 'Access-Control-Allow-Origin',
     'X-Requested-With': null,
     'X-Prototype-Version': null
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-25
      • 2010-10-13
      相关资源
      最近更新 更多