这代码有毒…

这代码有毒…

当看到你提供的接口,有这样的服务消费方,你会做何感想?

try {
    // 前置业务逻辑
    // 调用DD的接口处理
    feignClient.execute();
} catch(Exception e) {
    return “DD的接口异常,请关注公众号「程序猿DD」,联系作者处理异常”;
}

作为一位开发老鸟,不喷队友,理性解析下这样做法的问题:

  1. 在调用第三方接口的时候,可能出现问题的原因有很多,并不一定是第三方接口的问题,比如:网络出现了问题,请求根本没有到达服务提供方。所以这样的异常返回是不合理的。
  2. 由于异常快中,完全没有输出异常栈的内容,导致异常信息被吞,未来就很难定位错误原因,容易陷入两边推诿的情况。
  3. 用户并不关心开发负责人是谁,异常应该更面向用户。使用用户看得懂异常描述信息,更为合理。

同时提醒一下,作为服务提供方,更要最好对消费端请求的进出记录,以便应对未来诸如此类的队友下毒事件出现。So,你的接口服务日志都到位了么?

最后,灵魂回忆下:你身边有这样下毒的队友吗?你认为这样的处理方式有何问题呢?你又会如何对付这样的服务消费方呢?

来源于公众号“程序猿DD”

       

标签: