验证码: 看不清楚,换一张 查询 注册会员,免验证
  • {{ basic.site_slogan }}
  • 打开微信扫一扫,
    您还可以在这里找到我们哟

    关注我们

laravel中如何用dingo API返回自定义错误信息

阅读:1115 来源:乙速云 作者:代码code

laravel中如何用dingo API返回自定义错误信息

laravel 在使用了 dingo API 后,错误信息被dingo异常类接管了,返回信息变成了 :

laravel中如何用dingo API返回自定义错误信息

要返回自定义的错误信息,就需要再把错误异常类接管回来(大概这个意思...)

方法:

在 appProvidersAppServiceProvider.php 中的 boot() 方法 添加如下代码:

 app('api.exception')->register(function (Exception $exception) {
  $request = Request::capture();
  return app('AppExceptionsHandler')->render($request, $exception);
 });

然后在 appExceptionsHandler.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返回自定义错误信息 

内容为自定义的了。

分享到:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: hlamps#outlook.com (#换成@)。
相关文章
{{ v.title }}
{{ v.description||(cleanHtml(v.content)).substr(0,100)+'···' }}
你可能感兴趣
推荐阅读 更多>