【问题标题】:Angular 2: Suppressing Origin Header from being sentAngular 2:禁止发送原始标头
【发布时间】:2016-11-24 09:26:30
【问题描述】:

在我的 Angular2 应用程序中,我正在使用 Angular2 提供的 HTTP 服务进行 HTTP 调用。我看到它发送的请求包含标头'Origin',并带有一个值。有人可以告诉我是否有办法阻止 Angular2 将 Origin 标头附加到 HTTP 请求?

【问题讨论】:

  • 我相信浏览器实际上控制了这个header,如果你试图执行一个HTTP调用across domains,这个header会被添加。Angular 2 docs表明有一个删除方法你可以称呼。我只是不确定它是否会在浏览器驱动该标题时起作用。
  • 为什么?它是 CORS 请求所必需的,如果它是本地的,你为什么要关心?
  • 我在 Electron 中运行 Angular2。因此,每当我向另一个域发出 PUT/POST 请求时,它都会发送带有值“file://”的“Origin”标头。
  • 应该标记这个问题电子然后用它创建的问题的细节更新问题。可以尝试使用 httpInterceptor 删除它
  • 浏览器添加“Origin”标头以防跨域ajax调用

标签: javascript http angular cors http-post


【解决方案1】:

如果您无法修改服务器代码以允许来自当前来源,您可以利用 Electron 在 node.js 之上运行的事实。您需要在 node.js/electron 设置中添加类似 Express 的内容,这将充当来自 Angular 2 的 XMLHttpRequests 和您的服务器之间的代理。因此,您的 http 路由将是 (Angular 2 Http) => Express => Server。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-08-03
    • 2018-04-24
    • 2010-11-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-11
    • 2016-11-13
    相关资源
    最近更新 更多