在向 JSON 发出 HTTP 请求后,如何将 angular-in-memory-web-api 返回给 Observable 的响应变形?

How to morph the response returned to Observable by angular-in-memory-web-api after HTTP request to JSON?

我绝对可以映射 Observable 并以我喜欢的任何方式转换响应,但是在经历 documentation 时我遇到了

responseInterceptor

所以,我想知道我是否可以发送一些配置并获得 JSON 响应本身而无需编写我的额外函数。

没有太多关于 responseInterceptor 或如何使用它的文章。 如果不是这个,那么还有其他方法可以使用 angular-in-memory-web-api 本身来做到这一点吗?

Angular 中的 in-memory-web-api 和 ResponseInterceptor 用于在测试场景中伪造/操纵请求。

毕竟我也不是很清楚,你的目的是什么

借助此拦截器,您可以在响应返回到 observable 之前修改它

You can morph the response returned by the default HTTP methods, called by collectionHandler, to suit your needs by adding a responseInterceptor method to your InMemoryDbService class. The collectionHandler calls your interceptor like this:

responseOptions = this.responseInterceptor(responseOptions, requestInfo);

要测试它是否正常工作,您可以将此代码添加到您的 InMemoryDbService

responseInterceptor(res: ResponseOptions, ri: RequestInfo):ResponseInterceptor {
  console.log("call responseInterceptor");
  return res;
}