# 自动检测接口branch_id

目前webui中心端,接口需传branch_id,但是很多时候会搞忘了传,导致出现问题,所以这里做了自动配置以及无配置告警提示,一次性解决缺少branch_id带来的问题。

# 自动配置

通常需要传递branch_id的接口都是在带左树的页面,所以对几种类型的左树统一做了封装,会将选中的值存入全局store中。

在axios请求拦截器中,判断store中存在且接口参数上没有、且接口不属于不需要传的名单当中,则会给接口带上branch_id。

# 缺失告警

上面的自动配置,理论上解决完了Vue下的所有接口问题。

还存在嵌入ext页面的场景问题,通过加告警提示去检测branch_id。

  1. 页面store中有branch_id,接口没传时

    理论上只有左树是vue的,右侧内容嵌入ext的页面才会有这种场景。当出现时,会告警提示。

  2. 接口传的branch_id与store中不一致时

    之前出现过ext的嵌入页面没拿到正确的branch_id,会给个默认'0',导致请求错分支。

    现在会将其与store中存的正确的值,进行比较,不一致时告警提示。

  3. 跳临时页面,没配置branch_id时

    由于临时页面是否设置branch_id是一个非必填字段,所以在当前页没配置时告警提示。