javascript - 如何防止在 Chrome 中发送 Origin HTTP header ?

标签 javascript ajax google-chrome http-headers cors

情况:

  1. 我有一个生产网络服务器,比如说 https://example.com ,配置了 CORS 以及有限的允许来源集。该集合不包括本地主机来源。
  2. 在本地主机上,开发人员开发页面/模块/任何需要通过 AJAX 调用生产 Web 服务器的内容(甚至在开发期间)。为此,他们使用 CLI 参数 --disable-web-security --user-data-dir=chromeNoCors 运行 Chrome,以便 Chrome 发送不带 Origin header 的 AJAX。
  3. 问题在于仅发送不带 header 的 GET 请求。 POST 请求仍然包含 header ,因此生产服务器会将 header 值 ( http://localhost:5678 ) 与允许的来源集进行比较,并禁止访问所请求的资源。

问题: 是否有可能以某种方式完全阻止发送 Origin HTTP header ?

我知道有一种解决方法可以解决这种情况,方法是允许“localhost”(或开发人员必须添加到其/etc/hosts 中的某些特定主机)到生产服务器上允许的来源集,但我'如果可能的话我不想这样做。

最佳答案

如果你们使用 Chrome 试试这个扩展 https://chrome.google.com/webstore/detail/requestly-redirect-url-mo/mdnleldcmiljblolnjhpnblkcekpdkpa

您可以即时修改请求,甚至是 header

关于javascript - 如何防止在 Chrome 中发送 Origin HTTP header ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44027340/

相关文章:

javascript - jquery计算。多个div总计和总计计算

javascript - 有什么办法可以写这个更短/更干燥的东西吗?

c# - 当我在 mvc 的 ModelState 中使用 Ajax 更新数据库时

ajax - ZF2 - 使用 Ajax 填充选择

javascript - 意外的 Javascript RegExp 行为

c# - jwplayer getDuration 在 chrome 控制台中有效,但在 C# 中与 IJavaScriptExecutor 无效

javascript - 无法更改文本框颜色?

javascript - 如何检查 promise 是否已解决并有条件地呈现 Javascript?

jquery - 使用ajax显示数据库中的图像

jquery - 从Chrome的日期类型输入中删除占位符