laravel11:发生异常时返回json

news/2024/11/15 21:10:37/文章来源:https://www.cnblogs.com/architectforest/p/18306831

一,未配置前laravel11直接render页面

如图:

二,配置

1,  bootstrap/app.php

<?phpuse Illuminate\Http\Request;
use Illuminate\Auth\AuthenticationException;
use Illuminate\Database\Eloquent\ModelNotFoundException;
use Illuminate\Foundation\Application;
use Illuminate\Foundation\Configuration\Exceptions;
use Illuminate\Foundation\Configuration\Middleware;
use Illuminate\Validation\ValidationException;
use Symfony\Component\HttpKernel\Exception\HttpException;
use Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use Symfony\Component\HttpKernel\Exception\UnauthorizedHttpException;
use Symfony\Component\HttpFoundation\Response;use App\extend\result\Result;return Application::configure(basePath: dirname(__DIR__))->withRouting(web: __DIR__.'/../routes/web.php',api: __DIR__.'/../routes/api.php',commands: __DIR__.'/../routes/console.php',health: '/up',)->withMiddleware(function (Middleware $middleware) {//})->withExceptions(function (Exceptions $exceptions) {$exceptions->respond(function (Response $response, Throwable $exception) {$msg = $exception->getMessage().' '.$exception->getFile().' '.$exception->getLine();return response()->json(['code'=>500,'msg'=>$msg]);});})->create();

2,触发异常,做一个除0操作

namespace App\Http\Controllers;use Illuminate\Http\Request;
use App\extend\result\Result;class VirtualController extends Controller
{//使用统一返回的数据格式public function res(Request $request) {//判断是否存在name参数,如果存在if ($request->has('name')) {$data = ['name'=>$request->name,'age'=>'24',];return Result::Success($data);} else {   //参数不存在时返回错误$z = 0;$a = 10 / $z;var_dump($a);return Result::ErrorCode(10024,'缺少name参数');}}
}

三,测试效果:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/745120.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

W外链创建小红书私信卡片教程

在当今的社交媒体时代,小红书以其独特的社区属性和用户粘性,成为了许多品牌和个人展示自己、推广产品的重要平台。而在小红书上,一张精美且富有吸引力的卡片往往能够迅速吸引用户的注意,提高点击率和转化率。本文将详细介绍如何使用W外链来创建小红书卡片,帮助你在小红书上…

kettle从入门到精通 第七十六课 ETL之kettle kettle连接hive教程

1、群里有小伙伴询问kettle连接hive的demo,今天抽点时间整理下。其实kettle连接hive和连接mysql数据库也是一样的。 1)kettle中的lib目录下放hive驱动jar,这里我使用的是kyuubi-hive-jdbc-shaded-1.9.0.jar。 2)设置hive连接参数。 3)通过表输入进行读取数据。 2、下载kyu…

火山引擎ByteHouse发布高性能全文检索引擎

作为一款定位为OLAP的分析型数据库,ByteHouse在支持结构化数据检索方面具备先天优势,而此次发布的全文检索引擎则补齐了对非结构化、半结构化等数据的快速检索能力,让用户可以构建一体化的数据管理、查询服务,降低运维成本和资源成本。更多技术交流、求职机会,欢迎关注字节…

Swift实现自定义Emoji、自定义表情、自定义键盘

实现自定义表情键盘效果如下demo 参考自PPStickerKeyboard

外卖霸王餐系统,霸王餐API接口,美团/饿了么全国200+城市

微客云免费提供外卖霸王餐系统,支持分站、运营商、商家后台、独立域名,自定义品牌,自主收款。 随着科技的快速发展,数字化和网络化已经渗透到我们生活的方方面面。在餐饮行业中,API(应用程序编程接口)接口的广泛应用不仅提升了餐厅的运营效率,也为消费者带来了更加便捷…

2024牛客暑期多校训练营1 I.Mirror Maze(题解)

2024牛客暑期多校训练营1 I.Mirror Maze(题解),大模拟题意 给一个 \(n \times m\) 的二维char数组,由4种镜子组成,\, /, -, |,镜面反射规则就是根据光线的方向和镜面的角度符合直觉的反射,然后有多组询问 \(q \leq 10^6\),每次给定起始位置和光线方向,求该光会经过多少…

基于M3u8的视频加密及播放

准备工作安装ffmpeg mac安装 brew install ffmpeg加密准备生成enc.keyopenssl rand 16 > enc.key ( 生成一个enc.key文件 )生成 ivopenssl rand -hex 16 ( 生成一段字符串,记下来)新建一个文件 enc.keyinfo 内容格式如下:Key URI # enc.key的路径,使用http形式 Pa…

zabbix6.4分离部署笔记

Zabbix 6.4 分离部署实施过程 一、环境准备 三台服务器### 操作系统:RED HAT ENTERPRISE LINUX 8.3 数据库:MYSQL8.0 ip地址以及用途:Zabbix 前端,8C 16G 16G系统盘100G:10.0.13.71 1371zabbixwebZabbix服务后端,8C 16G 100G:10.0.13.63 1363zabbixserverZabbix数据库MySql…

极大值抑制 nms 代码详解

NMS: 非极大值抑制(Non-Maximum Suppression), 功能:从大量的预测结果中筛选出得分最高的结果。 思路:NMS的主要思路是通过计算目标框之间的重叠度(即IOU,交并比)来剔除非最佳结果。NMS介绍 一张图片经过模型的前向推理之后,会输出非常多的检测结果,如下图Prediction所…

终端日志查看工具

tailspin 安装: # macOS brew install tailspin# Cargo cargo install tailspin使用: tspin <file>lnav 安装: # macOS brew install lnav# Ubuntu sudo snap install lnav使用: lnav <file>

Cisco ACI Simulator 6.0(6c)M - ACI 模拟器

Cisco Nexus 9000 Series Switches, NX-OS Standalone 10.4(3)F and ACI Mode 16.0(6c)MCisco ACI Simulator 6.0(6c)M - ACI 模拟器 Application Centric Infrastructure (ACI) Simulator Software 请访问原文链接:https://sysin.org/blog/cisco-acisim-6/,查看最新版。原创…

新文章:“Java 中的 finally 代码块不执行的情况”

新文章:“Java 中的 finally 代码块不执行的情况” - https://www.emanjusaka.top/2024/07/java-finally-non-execution 先抛出一个问题:Java 中的 finally 代码块一定会被执行吗?这是一个比较常见的面试题,在我们的印象中好像 finally 的代码块是一定会被执行的。但真实的…