在向 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;
}
我绝对可以映射 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 aresponseInterceptor
method to yourInMemoryDbService
class. ThecollectionHandler
calls your interceptor like this:responseOptions = this.responseInterceptor(responseOptions, requestInfo);
要测试它是否正常工作,您可以将此代码添加到您的 InMemoryDbService
responseInterceptor(res: ResponseOptions, ri: RequestInfo):ResponseInterceptor {
console.log("call responseInterceptor");
return res;
}