美文网首页微信小程序开发微信小程序开发者
小程序全栈学习-全局异常处理的优化

小程序全栈学习-全局异常处理的优化

作者: Answer_ccbb | 来源:发表于2019-02-28 08:10 被阅读3次

    向客户端或者开发者返回异常信息是全局异常处理的重要任务,前面几篇文章代码中规定了采用Json格式返回异常信息。这种异常信息的显示方式隐藏了具体的错误信息,对客户端用户来说可以比较清楚的看到异常发生的原因 ,但是不便于服务器开发者修改服务器代码错误。

    针对返回的异常信息,一个比较好的做法是,针对第一种异常(由于用户输入导致的异常)采用json格式进行返回;针对第二种异常(由于服务器代码导致的异常)采用TP5默然的方式(html页面)返回异常信息。

    这就需要一种if语句来做判断,具体写法如下:

    if(config('app_debug')){      //如果app_debug变量威震

      return parent::render($e);   //采用TP5自带的render函数进行返回,返回html页面     由于目前的类 继承了TP5的handle类,所以调用时用parent

    }

    else {

        $this->code = 500;

        $this->msg = '服务器内部错误';

        $this->errorCode = 999;

        $this->recordErrorLog($e);

    }

    这里有几天扩展的知识:

    1、读取TP5设置文件中的变量的两种方式

          config(‘app_debug’);

    Config::get('app_debug')

    2、TP5的配置文件不能用作存储变量的地方,正确的思路是将要存储的变量放在数据库或者缓存中,或者采用全局变量。

    相关文章

      网友评论

        本文标题:小程序全栈学习-全局异常处理的优化

        本文链接:https://www.haomeiwen.com/subject/gbwuyqtx.html