日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Php+debugbar+api,Lumen/Laravel调试API接口利器laravel-debugbar

發(fā)布時(shí)間:2024/3/26 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Php+debugbar+api,Lumen/Laravel调试API接口利器laravel-debugbar 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Laravel、Lumen打印sql每次都要在手動(dòng)加調(diào)試代碼挺麻煩的。本文主要介紹另一個(gè)調(diào)試神器barryvdh/laravel-debugbar

先講一下效果。可以調(diào)試帶頁(yè)面的接口,也可以調(diào)試單純的json api接口。

圖一:請(qǐng)求的接口列表,可以根據(jù)一些條件進(jìn)行過(guò)濾。紅色劃線的部分是我自己修改composer保增加上去的選項(xiàng),后面一起放出composer倉(cāng)庫(kù)鏈接。

圖二、查看異常(就不用到服務(wù)器看日志文件了)

圖三、打印sql(所有sql一目了然)

還有其他幾個(gè)面板,就不截圖了。

安裝步驟:

1、安裝composer包

# 原版composer包,請(qǐng)求接口列表沒(méi)有我圖一劃線那幾個(gè)篩選項(xiàng)

composer require barryvdh/laravel-debugbar

composer require barryvdh/laravel-debugbar --dev //僅開(kāi)發(fā)環(huán)境安裝

# 我修改的過(guò)的composer包

composer require evan766/laravel-debugbar

composer require evan766/laravel-debugbar --dev //僅開(kāi)發(fā)環(huán)境安裝

2、注冊(cè)服務(wù)提供者。該composer包同同時(shí)支持laravel和lumen,如果是lumen框架使用,注冊(cè)的服務(wù)提供者要換成lumen的服務(wù)提供者

#bootstrap/app.php

if (env("APP_ENV") != "production" && env("APP_DEBUG") === true) {

$app->register(BarryvdhDebugbarLumenServiceProvider::class);

}

3、修改配置文件。將包中的debugbar.php配置文件放到Lumen項(xiàng)目的config目錄。

注意些以下幾個(gè)配置:

#是否啟用監(jiān)聽(tīng)調(diào)試,總開(kāi)關(guān),配置成 true開(kāi)啟

"enabled" => env("DEBUGBAR_ENABLED", null),

# 將調(diào)試頁(yè)面注入到你項(xiàng)目的運(yùn)行的一個(gè)view頁(yè)面,在右下角出來(lái)一個(gè)調(diào)試標(biāo)

"inject" => true,

4、修改app/Exceptions/Handler.php,所有異常加入到debugbar收集的信息中

public function report(Exception $e)

{//如果開(kāi)發(fā)環(huán)境并且打開(kāi)調(diào)試模式,將異常加入到debugbar調(diào)試工具中

if (config("app.env") != "production" && env("APP_DEBUG") === true) {

debugbar()->addThrowable($e);

}

parent::report($e);

}

4、特別提示,對(duì)于沒(méi)有頁(yè)面的純api接口的調(diào)試。單獨(dú)定義一個(gè)路由渲染一個(gè)給debugbar注入調(diào)試信息的view頁(yè)面。然后你從任意地方(postman、app、前段項(xiàng)目)請(qǐng)求接口,點(diǎn)開(kāi)右下角的調(diào)試按鈕,通過(guò)篩選項(xiàng)過(guò)濾出你要查看的api請(qǐng)求就行。

可以添加一個(gè)單獨(dú)的路由文件

$router->get("debugbar", function() {if (env("APP_ENV") != "production" && env("APP_DEBUG") === true) {return view("debug_tool.debugbar");

}

abort(404);

});

最后放一下其他人寫(xiě)的教程供參考

如果很懶不想安裝,給一下我之前用過(guò)的一個(gè)助手函數(shù)打印sql

//可以用這個(gè)助手函數(shù)打印

functiongetSql ()

{

app("db")->listen(function ($sql) {$singleSql = $sql->sql;if ($sql->bindings) {foreach ($sql->bindings as $replace) {$value = is_numeric($replace) ? $replace : """ . $replace . """;$singleSql = preg_replace("/?/", $value, $singleSql, 1);

}

}

dump($singleSql);

});

}

總結(jié)

以上是生活随笔為你收集整理的Php+debugbar+api,Lumen/Laravel调试API接口利器laravel-debugbar的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。