首页 > 解决方案 > 使用 Angular 代理

问题描述

我试图使用角度代理来代理我的后端服务器。我的服务器在http://localhost:8000 上运行 我的 Angular 服务器在http://localhost:4200上运行

如果 API 调用http://localhost:4200/api/bacon。我希望它代理到http://localhost:8000/api/bacon。但是,我只希望代理以 /api 开头的调用。

我的 proxy.conf.json 文件看起来像这样。

{
  "/api/*":
  {
    "target": "http://localhost:8000/api",
    "secure": false
  }
}

我的一个 api 调用看起来像这样。 http://localhost:4200/api/也门

在这种情况下,我希望它被代理到 http://localhost:8000/api/yemen

但是它似乎不起作用

标签: angular

解决方案


完整的 URL 被转发到目标,因为您没有使用pathRewrite,那么您不必/apitarget属性中写入。

此外,如果您下次想获得更多信息,可以使用logLevel: 'debug'查看传入请求及其重定向。

{
  "/api": {
    "target": "http://localhost:8000",
    "secure": false,
    "logLevel": "debug"
  }
}

推荐阅读