【发布时间】:2012-12-17 06:44:56
【问题描述】:
我有一个安装了 DebugKit 的 CakePHP 2 应用程序。它工作正常,我在“时间”工具栏中为我加载的每个页面获取内存使用情况和处理时间。
我还希望能够在页面加载后获取 ajax 请求的内存使用情况和处理时间。我知道我可以使用 DebugKit 工具栏中的“历史记录”按钮访问以前的 ajax 请求,但是当我想单击页面、触发 ajax 请求并为它们获取即时调试信息时,这并没有真正的帮助。
所以,我进行了一些搜索,发现我可以在 Firefox 中使用 Firebug + FirePHP 以及我的应用程序中的 FirePHP 和 FireCake 库,并根据每个 ajax 请求获取 DebugKit 的所有统计信息。这听起来很完美,正是我想要做的。
不幸的是,我似乎无法让它工作。我只能在http://someguyjeremy.com/blog/using-firephp-to-debug-your-cakephp-app找到一个关于这件事的教程
我已经完成了教程中提到的所有事情,Cake 完全没有给我任何错误。但是,除非我遗漏了什么,否则我看不到调试信息在 Firebug 中的显示位置,如果它确实首先被馈送到 Firebug。
我的配置:
蛋糕版: 2.2.4
Firefox 版本: 17.0.1
Firebug 版本: 尝试使用 1.11.1 和 1.9.0
FirePHP 版本: 0.7.1
DebugKit 版本: 2.2.0(最新的主分支)
更新
它似乎非常适合不以 .json 结尾的 Ajax 请求,因此不会被我在 routes.php 中的 Router::parseExtensions('json'); 接收。
我取出 Router::parseExtensions('json'); 并将我的 Ajax 请求更改为直接执行我的 filter 操作而不是调用它 filter.json 并且 Cake 提供所有 FireBug 标头。不幸的是,我不能这样使用它,因为 JQuery 需要内容类型为 application.json。
【问题讨论】:
-
您在萤火虫响应中看到 Firephp 标头吗?至少使用 Firebug,您可以检查标题。寻找大量
X-Wf-X-X-X-XX标头。 -
还要确保
Net标签已启用。 -
@jeremyharris 我不知道昨天的问题是什么。当我点击您的网站时,它被重定向到一个奇怪的 url(如果我没记错的话,实际域名中的数字是 404)随后超时。无论如何,它现在工作正常,所以我用正确的 URL 更新了帖子。
-
@jeremyharris 我已经用新的细节更新了帖子。我发现这个问题只有在我请求通过
outer::parseExtensions('json');路由的ajax 操作时才会发生——我认为这与cakephp.lighthouseapp.com/projects/42880/tickets/… 报告的错误相同,但我不确定。你怎么看?