Angular 代理配置“不重写 GET /api/account/user,因为客户端更喜欢 JSON”

问题描述 投票:0回答:1

在使用 ASPNET CORE DotNet 6.0 后端(使用端口 44303)的 Angular v16.1.0(使用端口 44498)中遇到 CORS 错误后,我遵循了使用 Angular 代理重写对后端 URL 的请求的建议。 这是我的代理配置:

proxy.conf.js

我在打字稿组件中调用 HTTClient GET:

HTTP客户端获取

什么也没发生 - URL 没有被重写,浏览器显示 HTTP 404 未找到消息:

Chrome 404 错误

我启用了详细日志记录,并收到以下消息:

WebPack 错误消息。

我对此进行了广泛的研究,但未能找到任何人报告此特定问题,尤其是特定的 WebPack 错误消息。 我发现其他人报告 Angular 代理无法工作,但几乎在所有情况下,他们似乎都没有重写 HTTPS 调用。

预期的行为是将 URL https://localhost:44498/api/account/user 重写为 https://localhost:44303/api/account/user 以便 GET 成功(就像由 POSTMAN 调用时一样)。 )

json angular webpack url-rewriting proxy
1个回答
0
投票

尝试更改代理配置

const PROXY_CONFIG = [
  {
    "/api/*": { 
      "target": 'https://localhost:44303',
      "secure": true,
    }
  }
]

const PROXY_CONFIG = [
  {
    "/api/**": { 
      "target": 'https://localhost:44303',
      "secure": true,
    }
  }
]

注意路径匹配器中的双

**
。我认为单个
*
表示单个路径部分的通配符,双数表示完整路径的通配符。

© www.soinside.com 2019 - 2024. All rights reserved.