# 错误处理流程 ```angular2html 错误发生的时刻: 1. 运行时 2. 前端调用后端接口 运行时错误: 抛出路径: event --> eventBus --> FrontEndEventRouter --> webSocket 事件通过eventBus传递到FrontEndEventRouter, 进行初步处理后,通过webSocket传递到前端。 一般通过 A8kErrorsPromptEvent 和 AppExceptionEvent 传递错误信息 前端调用后端接口: 以异常的形式抛出,被Springboot的异常处理器捕获,返回给前端。 异常通常是AppException(内部只包含AppError一个对象) 调用接口错误返回的结构 code:A8kEcode, data:ZAppPromopt, dataType:ZAppPromopt, 发生错误后返回的结构为ZAppPromopt和错误码,如果前端需要对错误进行一定的逻辑处理,则通过code进行逻辑判断 如果前端只需要展示错误信息,则通过data(ZAppPromopt)进行展示即可。 后续考虑在返回值的结构中加入errorAttachment,用于前端进行更复杂的异常显示。 事件: 系统运行中会产生各种事件,与前端相关的事件会被FrontEndEventRouter收集,如果是设备运行错误相关的事件,则会被转换成 ZAppPromopt,通过webSocket传递到前端。 ```