首页 > 其他分享 >使用whoops作为tp6的自定义异常

使用whoops作为tp6的自定义异常

时间:2023-04-18 09:58:55浏览次数:40  
标签:return 自定义 render whoops HttpResponseException tp6 异常

安装 composer require filp/whoops

在 app/ExceptionHandle.php中的render

  public function render($request, Throwable $e): Response
  {
    // 添加自定义异常处理机制
    if (ENV('APP_DEBUG')) {
      // 如果是HttpResponseException异常则原样输出
      // JUMP插件里的success,error和result方法均返回的是HttpResponseException异常
      if ($e instanceof HttpResponseException) {
        return $e->getResponse();
      }

      // Whoops 接管请求异常
      $whoops = new \Whoops\Run;
      $whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler());
      return Response::create(
        $whoops->handleException($e),
        'html',
        500
      );
    }

    // 其他错误交给系统处理
    return parent::render($request, $e);
  }

 

标签:return,自定义,render,whoops,HttpResponseException,tp6,异常
From: https://www.cnblogs.com/jqynr/p/17328473.html

相关文章

  • 自动化脚本:一键安装python自定义版本
     1:环境:centos7python2.72:脚本内容:#!/usr/bin/envpythonimportosimportsysimportrequestsimporttarfileimportshutilimportsubprocess#Installnecessarypackagestry:subprocess.check_call(["yum","install","-y&qu......
  • 自定义bpmn 属性面板
    点击查看代码<template><divclass="custom-properties-panelmy-card"><divv-if="selectedElements.length<=0"class="empty">请选择一个节点</div><divv-else-if="selectedElements.length>1&......
  • angular项目国际化yaml自定义配置(ngx-translate)
    angular国际化配置很简单,但是想不用json文件用yaml文件,并且同一语言分label.jp.yaml和message.jp.yaml两个文件分开管理。1、下载ngx-translate的依赖库npminstall@ngx-translate/core--savenpminstall@ngx-translate/http-loader--save2、app.module.ts 中引入TranslateMo......
  • npm自定义模块及发布模块NodeJS
    在模块目录下执行:npminit(可以加--yes一键生成)新建文件index.jsvaryunan='helloyunan';module.exports=yunan;然后将文件夹放到node_modules可以用下面方法使用试试constyunan=require('huyunan');console.log('yunan',yunan);//yunanhelloyunan发布之前......
  • splunk 自定义SPL命令关联威胁情报数据
    通过自定义SPL命令关联微步情报数据,效果如下:  1、安装splunk-sdkcd/data/splunk/etc/apps/search/binpip3install-t.splunk-sdk2、自定义脚本开发[root@SIEM-P-VC-A001bin]#morethreatquery.py#!/usr/bin/python#-*-coding:utf-8-*-importsysfromsplunklib.s......
  • Dockerfile自定义镜像
    常见的镜像在DockerHub就能找到,但是我们自己写的项目就必须自己构建镜像了。镜像结构镜像是将应用程序及其需要的系统函数库、环境、配置、依赖打包而成。我们以MySQL为例,来看看镜像的组成结构:简单来说,镜像就是在系统函数库、运行环境基础上,添加应用程序文件、配置文件、......
  • 在.NET 6.0中自定义接口路由
    大家好,我是张飞洪,感谢您的阅读,我会不定期和你分享学习心得,希望我的文章能成为你成长路上的垫脚石,让我们一起精进。在本文中,我们将讨论ASP.NETCore中的新路由。我们将了解什么是接口(endpoints)路由,它是如何工作的,它在哪里使用,以及如何创建自己的路由。本文主题:探索接口路由......
  • Java中线程的常用操作-后台线程、自定义线程工厂ThreadFactpry、join加入一个线程、线
    场景Java中Thread类的常用API以及使用示例:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/126596884上面讲了Thread的常用API,下面记录下线程的一些常用操作。注:博客:https://blog.csdn.net/badao_liumang_qizhi实现后台线程后台线程,是指运行时在后台提供的一......
  • 自定义数据类型
    内置类型---intshortchardoubleflaot---C语言自己的类型复杂类型---结构体,枚举,联合体---自己创造的类型结构体结构体类型引用声明结构体是一些值的集合,这些值可以是不同类型。structStu//如果不屑Stu就是匿名结构体类型{ member-list;//--成员列表}Variable-list;//变量列表......
  • docker 构建自定义镜像
    1、docker构建自定义镜像copy与add的区别copy指令和add指令的唯一区别在于:是否支持从远程URL获取资源。COPY指令只能从执行dockerbuild所在的主机上读取资源并复制到镜像中。而ADD指令还支持通过URL从远程服务器读取资源并复制到镜像中。相同需求时,推荐使用COPY指令。ADD指令更......