【发布时间】:2018-01-16 04:43:15
【问题描述】:
我有一个带有拦截器的 AngularJS 应用程序来显示错误消息。
有时来自后端的错误消息需要一些前端处理以提供更多上下文,例如将“访问被拒绝”更改为“您不能这样做,因为 X”。
如何才能不调用拦截器?
现在我收到了 2 条消息。来自我的控制器的消息和来自拦截器的消息。
【问题讨论】:
-
谁应该决定何时(不)显示来自拦截器的消息?基于什么?
-
基于我相信的控制器上已经处理的错误响应。
-
尚未处理。 在控制器得到响应之前调用拦截器。不过,控制器可以告诉拦截器它将处理哪些类型的错误。
-
是否有另一个 Angular 结构来解决这个问题?也许类似于拦截器,但 请求进入服务?我猜这个用户案例很糟糕。
-
我的建议是控制器应该告诉拦截器在发送请求时不要处理什么,方法是在配置对象中添加该信息。
标签: angularjs angular-http-interceptors