|
@@ -0,0 +1,42 @@
|
|
|
+<?php
|
|
|
+/**
|
|
|
+ * Created by PhpStorm
|
|
|
+ * User:林志杰
|
|
|
+ * Email:[email protected]
|
|
|
+ * Motto:纵有疾风起,人生不言弃!
|
|
|
+ * Time:2020/1/13 23:58
|
|
|
+ */
|
|
|
+
|
|
|
+declare(strict_types=1);
|
|
|
+
|
|
|
+namespace app\api\exception;
|
|
|
+
|
|
|
+
|
|
|
+use think\exception\Handle;
|
|
|
+use think\Response;
|
|
|
+use Throwable;
|
|
|
+
|
|
|
+class Http extends Handle
|
|
|
+{
|
|
|
+ public $httpStatus = 500;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * Render an exception into an HTTP response.
|
|
|
+ *
|
|
|
+ * @access public
|
|
|
+ * @param \think\Request $request
|
|
|
+ * @param Throwable $e
|
|
|
+ * @return Response
|
|
|
+ */
|
|
|
+ public function render($request, Throwable $e): Response
|
|
|
+ {
|
|
|
+ if (method_exists($e, "getStatusCode")) {
|
|
|
+ $httpStatus = $e->getStatusCode();
|
|
|
+ } else {
|
|
|
+ $httpStatus = $this->httpStatus;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 自定义异常处理机制
|
|
|
+ return show(config('status.error'), $e->getMessage(), [], $httpStatus);
|
|
|
+ }
|
|
|
+}
|