请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

HttpException的异常处理

如果输入的网址错误,在生产模式下,返回的信息是“服务器错误”。我觉得可以在控制结构中增加HttpException的异常处理,返回“请求的地址不存在”。代码如下:

if ($e instanceof BaseException) {
    $this->code = $e->code;
    $this->errorCode = $e->errorCode;
    $this->msg = $e->msg;
} elseif ($e instanceof HttpException) {
    $this->code = 500;
    $this->errorCode = 999;
    $this->msg = '请求的地址不存在';
} else {
    if (config('app_debug')) {
        return parent::render($e);
    } else {
        $this->code = 500;
        $this->errorCode = 999;
        $this->msg = '服务器错误~!';
        $this->recordErrorLog($e);
    }
}

----------------------------------------------------------------------------------------------------------

更新:

除了输入的网址错误,还有可能是请求的方式错误,两者都属于HttpException异常。如果能区分两者最好,如果区分不了,可以提示“请求的地址不存在或请求的方式错误”。

正在回答 回答被采纳积分+3

4回答

7七月 2017-12-02 03:31:31

可以的,这个处理挺好。

2 回复 有任何疑惑可以回复我~
旺仔小牛牛 2019-05-07 18:05:22

受用了

0 回复 有任何疑惑可以回复我~
薛定谔的猫XS 2019-03-03 22:00:33

hhh这个处理很好  我也是遇到了生产模式下的问题

0 回复 有任何疑惑可以回复我~
yuzhewo 2017-11-29 22:36:31

有道理

0 回复 有任何疑惑可以回复我~

相似问题

登录后可查看更多问答,登录/注册

问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号