laravel框架 api自定義全局異常處理方法
api返回實(shí)現(xiàn)
$result = User::find($id); if(empty($result)){ throw new ApiException('獲取失敗'); } else{ return json_decode($result); }
api返回信息
{ "msg": "", "data": "獲取失敗", "status": 0 }
1,添加異常類
namespace App\Exceptions; class ApiException extends \Exception { function _construct($msg='') { parent::_construct($msg); } }
2,修改laravel異常類u。。。
namespace App\Exceptions; public function render($request, Exception $e) { if ($e instanceof ApiException){ $result = [ "msg" => "", "data"=>$e->getMessage(), "status"=>0 ]; return response()->json($result); } return parent::render($request, $e);
考慮開發(fā)配置時(shí)
public function render($request, Exception $e) { if(config('app.debug')){ return parent::render($request,$e); } return $this->handle($request,$e); } public function handle($request,Exception $e){ if ($e instanceof ApiException){ $result = [ "msg" => "", "data"=>$e->getMessage(), "status"=>0 ]; return response()->json($result); } return parent::render($request, $e); }
以上這篇laravel框架 api自定義全局異常處理方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
- 詳解Laravel制作API接口
- Laravel如何實(shí)現(xiàn)適合Api的異常處理響應(yīng)格式
- 在 Laravel 中動(dòng)態(tài)隱藏 API 字段的方法
- Laravel實(shí)現(xiàn)ApiToken認(rèn)證請(qǐng)求
- laravel dingo API返回自定義錯(cuò)誤信息的實(shí)例
- Laravel框架實(shí)現(xiàn)調(diào)用百度翻譯API功能示例
- PHP使Laravel為JSON REST API返回自定義錯(cuò)誤的問題
- 讓Laravel API永遠(yuǎn)返回JSON格式響應(yīng)的方法示例
- Larave框架通過sanctum進(jìn)行API鑒權(quán)詳解
相關(guān)文章
基于OpenCart 開發(fā)支付寶,財(cái)付通,微信支付參數(shù)錯(cuò)誤問題
使用OpenCart 開發(fā)支付寶,財(cái)付通,微信支付如果稍不用心,很容易導(dǎo)致很多問題,而這些錯(cuò)誤很有可能是參數(shù)傳遞錯(cuò)誤,下面小編給大家整理了一篇文章很不錯(cuò),在此分享給大家,感興趣的朋友一起看看吧2015-10-10laravel unique驗(yàn)證、確認(rèn)密碼confirmed驗(yàn)證以及密碼修改驗(yàn)證的方法
這篇文章主要介紹了laravel unique驗(yàn)證、確認(rèn)密碼confirmed驗(yàn)證以及密碼修改驗(yàn)證的方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10YII2框架自定義全局函數(shù)的實(shí)現(xiàn)方法小結(jié)
這篇文章主要介紹了YII2框架自定義全局函數(shù)的實(shí)現(xiàn)方法,總結(jié)分析了YII2框架自定義全局函數(shù)相關(guān)實(shí)現(xiàn)技巧與操作注意事項(xiàng),需要的朋友可以參考下2020-03-03thinkphp3.2中Lite文件替換框架入口文件或應(yīng)用入口文件的方法
這篇文章主要介紹了thinkphp3.2中Lite文件替換框架入口文件或應(yīng)用入口文件的方法,涉及ThinkPHP相關(guān)配置技巧,需要的朋友可以參考下2015-05-05CI框架(CodeIgniter)實(shí)現(xiàn)的數(shù)據(jù)庫增刪改查操作總結(jié)
這篇文章主要介紹了CI框架(CodeIgniter)實(shí)現(xiàn)的數(shù)據(jù)庫增刪改查操作,結(jié)合實(shí)例形式總結(jié)分析了CI框架針對(duì)mysql數(shù)據(jù)庫增刪改查操作的模型、控制器及視圖相關(guān)定義與使用技巧,需要的朋友可以參考下2018-05-05Yii2創(chuàng)建控制器(createController)方法詳解
這篇文章主要介紹了Yii2創(chuàng)建控制器(createController)的方法,結(jié)合實(shí)例形式分析了Yii創(chuàng)建控制器所使用到的方法、操作步驟與相關(guān)技巧,需要的朋友可以參考下2016-07-07tp5(thinkPHP5框架)captcha驗(yàn)證碼配置及驗(yàn)證操作示例
這篇文章主要介紹了tp5(thinkPHP5框架)captcha驗(yàn)證碼配置及驗(yàn)證操作,結(jié)合實(shí)例形式分析了基于thinkPHP5框架的captcha驗(yàn)證碼配置及驗(yàn)證操作具體步驟與相關(guān)注意事項(xiàng),需要的朋友可以參考下2019-05-05使用PHP和JavaScript判斷請(qǐng)求是否來自微信內(nèi)瀏覽器
這篇文章主要介紹了使用PHP和JavaScript判斷請(qǐng)求是否來自微信內(nèi)瀏覽器,包括在手機(jī)端的程序上使用微信的分享JS腳本的方法,需要的朋友可以參考下2015-08-08