Laravel Debugbar没有捕获ajax请求



我是这个Laravel Debugbar的新手,我已经使用composer安装了Laravel Debugbar,并运行以下发布命令。

php artisan vendor:publish --provider="BarryvdhDebugbarServiceProvider"

在此之后,调试栏开始出现,并显示它运行的所有查询。但在这个查询列表中,它不包括任何来自ajax请求的查询。

为了捕获ajax请求,我更新了config/debugbar

'capture_ajax' => true,
'add_ajax_timing' => true,

但是,它不起作用。

我将回复为:

return response()->json([
//arr_of_data
],200);

使用以下数据表帮助了我:

<script>
$('body').on('xhr.dt', function (e, settings, data, xhr) {
if (typeof phpdebugbar != "undefined") {
if (xhr.getAllResponseHeaders()) {
phpdebugbar.ajaxHandler.handle(xhr);
}
}
});
</script>

参考:此处

还有另一个独立于查询选项卡的选项卡,您可以在其中查看有关ajax请求的信息。这是左手边的最后一个标签。请参阅附图。调试条请求选项卡

设置标题

X-Requested-With: XMLHttpRequest

请确保您拥有对存储/调试栏文件夹的完全访问权限!

有一次,我决定把storage/debugbar放在.gitignore中,却没有注意到那里有一个.gitigner文件,上面写着从git中排除里面的所有内容。因此,当我在服务器上部署它时,我只看到页面上的第一个请求(当我在本地测试它时,知道ajax请求显示在下拉列表中(。我还注意到历史记录(栏右侧的文件夹图标(是空的。发现storage/debugbar文件夹没有写访问权限,所以当我给它chmod 777 storage/debugbar时,所有的请求都出现了。(然后我把它从.gitignore中删除(

确保.env中的APP_URL与您访问应用程序的位置相同。我在使用ngrok时也遇到了同样的问题。

最新更新