【问题标题】:Angular : CORS error persists with proxy.conf.jsonAngular:CORS 错误仍然存​​在于 proxy.conf.json
【发布时间】:2021-01-05 01:17:53
【问题描述】:

我遵循了一些教程来解决我的 CORS 错误,但无法解决。

我有一个非常简单的服务器,它使用字符串 hello there 响应 get 127.0.0.1:8080/hello 以进行测试。

显然,在没有配置或代理的情况下,请求会出现 CORS 错误并且无法继续。

但是,我无法解决代理问题,因为我没有正确使用它,或者因为我犯了一个我找不到的错误。这是 proxy.conf.json :

{
  "/hello": {
    "target": "http://127.0.0.1:8080",
    "secure": false,
    "changeOrigin": true
  }
}

这是发球指令:"start": "ng serve --proxy-config proxy.conf.json"

我还通过插入阻止编译的错误并使用邮递员测试服务器来确保文件被正确调用。

这是调用服务器的代码行:

this.http.get('http://127.0.0.1:8080/hello').subscribe(result => {
  console.log(result);
});

注意:我使用的是 Angular 10.1.7,并且 - 如果可能的话 - 我不想更改服务器上的任何内容,因为我将无法始终访问服务器以解决未来的问题

【问题讨论】:

  • 我认为您不需要在您的情况下添加“pathRewrite”,因为它会重定向到没有“/hello”片段的 url
  • 好点,我还没有解决这个问题

标签: angular cors angular-httpclient


【解决方案1】:

原来打字稿代码是问题所在:

代理正确但根本没有使用,“好”的代码如下:

this.http.get('/hello').subscribe(result => {
  console.log(result);
});

通过一次调用整个 url,代理被忽略,但通过调用 '/hello' 代理可以进行重定向

注意:代理不能在 prod 环境中工作,这必须在 .htaccess 或同等文件上完成。

【讨论】:

    猜你喜欢
    • 2017-02-25
    • 1970-01-01
    • 2013-10-20
    • 2014-08-03
    • 1970-01-01
    • 2015-10-23
    • 1970-01-01
    • 2020-01-24
    • 1970-01-01
    相关资源
    最近更新 更多