我知道的事情(如果我错了,请纠正我,谢谢:)):
HttpInterceptor
的工作方式类似于Aspect-oriented programming; httpOptions
; clone()
修改响应也可以实现响应; 我想测试一些库,而它们的相关服务器有时可能会在开发时关闭。我只是在乎数据,因此无法与服务器交互
当请求满足某些模式时,是否有可能我可以仅返回已经准备好的模拟数据而无需请求服务器即使服务位于其他库中?
借助于 @Sachin Gupta 的帮助,我用此interceptor
进一步测试了demo。
已完成的操作:
auth-interceptor.ts
为请求添加标题; logging-interceptor.ts
已添加以跟踪请求的详细信息和时间成本; data-mocking-interceptor.ts
以停止请求到服务器,并直接返回模拟数据。 答案 0 :(得分:1)
看看这个。
https://stackblitz.com/edit/angular-json-http-response-catch
如果服务器可访问,则会填充数据,否则将模拟发送为响应
purchase.order.line
答案 1 :(得分:0)
您还可以考虑以下两种选择:
ngrx store
,您可以在其中直接用模拟数据填充商店,也可以从服务中返回模拟数据(服务是将http请求发送到服务器并将数据返回到angular app的服务)OR
PS。 服务工作者方法与拦截器方法有些相似,但在较低层次上,它不是特定于角度的,而是通常是Web技术的一部分。