Angular代理配置代理URL获取参数

时间:2019-04-29 12:22:35

标签: angular proxy

我需要添加一个代理配置,以向运行在另一个域上的Web服务发出GET请求(我正在localhost:4200上进行测试)。我已将以下proxy.conf.json文件添加到项目的根目录

{
  "/address/*": {
    "target": "https://api-url.com/address/",
    "secure": false,
    "changeOrigin": true,
    "logLevel": "debug"
  }
}

,并将--proxy-config=proxy.conf.json标志添加到ng serve中的package.json命令中。我的GET请求非常简单;

const url = `/address/cities?cityName=&zipCode=2000&languageCode=NL`;

const result = await fetch(url, {
  method: 'GET'
});

return await result.json();

我可以看到[HPM] GET /address/cities?cityName=&zipCode=2000&languageCode=NL -> https://onboarding-api-tst.crelan-int.be/address/被记录到终端后,代理起作用了,但是在/address/被代理之后,实际的请求就什么也没有起作用。是否可以将URL参数传递给代理?

1 个答案:

答案 0 :(得分:0)

正如其中一条评论中所述,答案是从目标中删除/address

{
  "/address/*": {
    "target": "https://api-url.com/",
    "secure": false,
    "changeOrigin": true,
    "logLevel": "debug"
  }
}

如果在目标末尾缺少/,我们还会遇到URL参数不能正确代理的问题。