<?php
|
|
namespace app\api\library;
|
|
use Exception;
|
use think\exception\Handle;
|
|
/**
|
* 自定义API模块的错误显示
|
*/
|
class ExceptionHandle extends Handle
|
{
|
|
public function __construct($message = "", $code = 0, $data = [])
|
{
|
$this->message = $message;
|
$this->code = $code;
|
$this->data = $data;
|
}
|
|
public function render(Exception $e)
|
{
|
$msg = $e->getMessage();
|
$code = 0;
|
// 验证异常
|
if ($e instanceof \think\exception\ValidateException) {
|
$code = 0;
|
$statuscode = 200;
|
$msg = $e->getError();
|
}
|
// Http异常
|
if ($e instanceof \think\exception\HttpException) {
|
$statuscode = $code = $e->getStatusCode();
|
}
|
return json(['code' => $code, 'msg' => $msg, 'time' => time(), 'data' => $this->data], 200);
|
}
|
|
}
|