laravel dingo API返回自定义错误信息的实例
laravel 在使用了 dingo API 后,错误信息被dingo异常类接管了,返回信息变成了 :
要返回自定义的错误信息,就需要再把错误异常类接管回来(大概这个意思...)
方法:
在 app\Providers\AppServiceProvider.php 中的 boot() 方法 添加如下代码:
app('api.exception')->register(function (\Exception $exception) { $request = Request::capture(); return app('App\Exceptions\Handler')->render($request, $exception); });
然后在 app\Exceptions\Handler.php 中 重写 laravel核心包的方法convertValidationExceptionToResponse(),具体代码如下:
public function convertValidationExceptionToResponse(ValidationException $e, $request) { $data = $e->validator->getMessageBag(); $msg = collect($data)->first(); if(is_array($msg)){ $msg = $msg[0]; } return ['code'=> -1,'msg'=>$msg]; }
这个方法里面的代码仅供参考,可自由发挥。
之后再调用接口会发现: ,内容为自定义的了。
以上这篇laravel dingo API返回自定义错误信息的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
相关推荐
-
laravel http 自定义公共验证和响应的方法
我就废话不多说了,直接上代码吧,大家一起来看看 <?php namespace App\Services; use Validator; class Http { /*** * 响应成功返回的函数 * * @param $message * @param $content * @param int $status * @return \Illuminate\Http\JsonResponse * @internal param $data */ public function success($
-
基于Laravel Auth自定义接口API用户认证的实现方法
基于 laravel 默认的 auth 实现 api 认证 现在微服务越来越流行了. 很多东西都拆分成独立的系统,各个系统之间没有直接的关系. 这样我们如果做用户认证肯定是统一的做一个独立的 用户认证 系统,而不是每个业务系统都要重新去写一遍用户认证相关的东西. 但是又遇到一个问题了. laravel 默认的auth 认证 是基于数据库做的,如果要微服务架构可怎么做呢? 实现代码如下: UserProvider 接口: // 通过唯一标示符获取认证模型 public function retri
-
laravel5.2表单验证,并显示错误信息的实例
首先说下原理,表单验证使用validate验证器进行验证,如果表单验证不通过,将表单数据和错误信息闪存到session中去,然后再到表单中进行展示. 1.验证器规则的写法,返回一个规则数组 public function rule() { return [ 'name' => [ 'required', 'max: 5', 'min: 2', 'regex: /^[\x{4e00}-\x{9fa5}A-Za-z0-9_]+$/u' ], 'password' => [ 'required',
-
让Laravel API永远返回JSON格式响应的方法示例
json格式 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成.它基于ECMA262语言规范(1999-12第三版)中JavaScript编程语言的一个子集. JSON采用与编程语言无关的文本格式,但是也使用了类C语言(包括C, C++, C#, Java, JavaScript, Perl, Python等)的习惯,这些特性使JSON成为理想的数据交换格式. 本文将给大家详细介绍关于让Laravel API永
-
laravel Validator ajax返回错误信息的方法
将return back()->withErrors($validator->errors())->withInput();替换为下面的代码 $validator = \Validator::make($request->input(), $rules, $messages); if ($validator->fails()) { //将返回错误循环组装成字符串 $arr = []; foreach ($validator->getMessageBag()->to
-
laravel dingo API返回自定义错误信息的实例
laravel 在使用了 dingo API 后,错误信息被dingo异常类接管了,返回信息变成了 : 要返回自定义的错误信息,就需要再把错误异常类接管回来(大概这个意思...) 方法: 在 app\Providers\AppServiceProvider.php 中的 boot() 方法 添加如下代码: app('api.exception')->register(function (\Exception $exception) { $request = Request::capture();
-
PHP使Laravel为JSON REST API返回自定义错误的问题
我正在开发某种RESTful API.发生一些错误时,我会抛出一个App :: abort($code,$message)错误. 问题是:我希望他用键"代码"和"消息"抛出一个json形成的数组,每个数组都包含上述数据. Array ( [code] => 401 [message] => "Invalid User" ) 有没有人知道是否可能,如果是,我该怎么做? 去你的app / start / global.php. 这将将40
-
ASP.NET中MVC使用AJAX调用JsonResult方法并返回自定义错误信息
一.如何用AJAX调用JsonResult方法 比如FuckController中添加有个返回JsonResult类型的方法FuckJson(): 复制代码 代码如下: <span class="kwd">public<span class="pln"> <span class="typ">JsonResult<span class="pln"> <span class=&
-
Jquery ajax执行顺序 返回自定义错误信息(实例讲解)
1.多个Ajax 在一个function中的执行顺序 由于Jquery中的Ajax的async默认是true(异步请求),如果想一个Ajax执行完后再执行另一个Ajax, 需要把async=false就可以了. 复制代码 代码如下: function TestAjax(){ var UserName = $("#txtUserName").val(); $.ajax( { url: &quo
-
使用BindingResult 自定义错误信息
目录 BindingResult 自定义错误信息 前提概要 基础框架 配置文件和Java代码的修改 在Controller方法中指定需要进行校验 进行自定义校验 在JSP页面上显示校验错误信息 BindingResult错误返回显示失败 BindingResult 自定义错误信息 前提概要 在Spring MVC和FreeMarker整合的项目中,采用JSR-303验证框架,通过注解的方式进行数据验证 基础框架 MVC:Spring MVC 3 视图:FreeMarker 验证:Hibernat
-
利用百度地图API获取当前位置信息的实例
利用百度地图API可以做很多事情,个人感觉最核心也是最基础的就是定位功能了.这里分享一个制作的JS可以实现登录网页后定位: <script type="text/javascript"> var map; var gpsPoint; var baiduPoint; var gpsAddress; var baiduAddress; var x; var y; function getLocation() { //根据IP获取城市 var myCity = new BMap.
-
Laravel+Dingo/Api 自定义响应的实现
在最近的开发开发项目中,我使用了Dingo/Api这个第三方Api库. Dingo是个很强大的Api库, 但在开发的过程中,需要自定义响应字段. 刚开始使用Ding/Api时,返回如下: { "message": "422 Unprocessable Entity", "errors": { "mobile": [ "手机号格式不正确" ] }, "status_code": 422 }
-
php自定义错误处理用法实例
本文实例讲述了php自定义错误处理用法.分享给大家供大家参考.具体如下: <?php error_reporting(E_ALL); function ErrHandler($errorno, $errorstr, $errorfile, $errorline) { $display = true; $notify = false; $halt_script = false; $error_msg = "<br>The $errorno error is occurring a
-
Restful API中的错误处理方法
简介 随着移动开发和前端开发的崛起,越来越多的 Web 后端应用都倾向于实现 Restful API. Restful API 是一个简单易用的前后端分离方案,它只需要对客户端请求进行处理,然后返回结果即可, 无需考虑页面渲染,一定程度上减轻了后端开发人员的负担. 然而,正是由于 Restful API 不需要考虑页面渲染,导致它不能在页面上展示错误信息. 那就意着当出现错误的时候,它只能通过返回一个错误的响应,来告诉用户和开发者相应的错误信息,提示他们接下来应该怎么办. 本文将讨论 Restf
随机推荐
- ASP.NET中实现jQuery Validation-Engine的Ajax验证实现代码
- JS 在数组插入字符的实现代码(可参考JavaScript splice() 方法)
- Java中的notyfy()和notifyAll()的本质区别
- 网站前端和后台性能优化的34条宝贵经验和方法
- php采集自中央气象台范围覆盖全国的天气预报代码实例
- 红米手机抢购的js代码
- javascript控制在光标位置插入文字适合表情的插入
- Nginx实现跨域使用字体文件的配置详解
- vbs 脚本错误:操作中文件名或类名未找到的解决方法
- Shell编程指南
- jQuery获取动态生成的元素示例
- JS CSS制作饱含热情的镶边文字闪烁特效
- PHP浮点比较大小的方法
- 详解C++设计模式编程中策略模式的优缺点及实现
- 实例详解android studio如何导入.so文件的方法
- Django之提交表单与前后端交互的方法
- SQL Server 2000/2005/2008删除或压缩数据库日志的方法
- ThinkPHP框架整合微信支付之Native 扫码支付模式二图文详解
- C#6.0中你可能不知道的新特性总结
- PHP实现判断二叉树是否对称的方法