Angular 角度代理到后端匹配具有特定查询参数的API路径

Angular 角度代理到后端匹配具有特定查询参数的API路径,angular,proxy,Angular,Proxy,我试图用特定的查询参数代理对API的后端调用。比如说,API路径是/path/to/API?param1=foo¶m2=bar,我只需要用param2=bar代理请求。在不使用或使用任何查询参数的情况下代理调用/path/to/api是很容易的,而不是我的情况 我从开始挖掘,但它只包含基本的例子。然后我发现,据说我可以使用自定义匹配器函数,但据我所知,它在Angular中不受支持。然后我访问并发现定制匹配器可能被传递到代理配置上下文属性。不过,我不知道如何在Angular proxy配置

我试图用特定的查询参数代理对API的后端调用。比如说,API路径是
/path/to/API?param1=foo¶m2=bar
,我只需要用
param2=bar
代理请求。在不使用或使用任何查询参数的情况下代理调用
/path/to/api
是很容易的,而不是我的情况

我从开始挖掘,但它只包含基本的例子。然后我发现,据说我可以使用自定义匹配器函数,但据我所知,它在Angular中不受支持。然后我访问并发现定制匹配器可能被传递到代理配置上下文属性。不过,我不知道如何在Angular proxy配置中使用它,因为它有另一个模式。似乎有最接近的提示来构建我需要的路径,我使用了不同的选项,尽管没有一个真正起作用。我发现path使用了or或格式,但这些知识对我也没有帮助。我也发现了类似的问题,并对建议的正则表达式进行了一些调整,使其适应我的情况,但同样没有运气

// ...
"**/path/to/api?*param2=bar*": {
  "target": "https://localhost:4200",
  "secure": false,
  "pathRewrite": () => "/mocks/api.mock.json"
},
// ...

这是我尝试过的许多方法之一,它不代理所需的请求。

尝试使用
pathRewrite
回调来检索有关url路径的信息

例如:

"**/v1/myApi": {
  "pathRewrite": (path) => {
      if (path.includes('param=bar')) {
          return "/mocks/response1.mock.json";
      }
      return "/mocks/response2.mock.json";
  }
}

如果代理配置文件是.json,如何添加回调?