使用 Clockwork 来调试 Laravel App

说明

开发过 Rails 程序的朋友应该熟悉 RailsPanel , 是的 Clockwork 是 RailsPanel 的 PHP 版本.

Clockwork 由两个部分组成:

安装

首先安装 Chrome 插件 Clockwork , 然后照着 Github 项目 的 readme 安装服务器端的.

Chrome 插件端

上图, 你们就懂了

这样就能看清楚 App 里面的工作情况了.

How does it work?

详情请见 这里.

简单点解释呢, 如下:

Server side

服务器端收集数据, 并把数据整理为 json 格式输出, 每一次的请求都是有一个独立的 id, 通过 HTTP header 传输给 Chrome 插件, 如下面这两个是这一次返回的 header :

X-Clockwork-Id:1408631499.2148.1282148919
X-Clockwork-Version:1.5

Chrome 插件

Chrome 插件端, 通过上面传输过来的 X-Clockwork-Id header, 按照以下规则, 拼接 URL

/__clockwork/{id}

在此例子中, 得出

http://localhost:8000/__clockwork/1408631499.2148.1282148919

访问以上 URL 可以获取到 服务器端产生的 json 文件, 内容见这个 Gits.

Chrome 插件端拿到 json 数据以后, 就开始解析, 渲染到 console 里面啦.

解释完了, 这个工具真的很帅.

--EOF--


欢迎关注 LaravelTips, 这是一个专注于为 Laravel 开发者服务, 致力于帮助开发者更好的掌握 Laravel 框架, 提升开发效率的微信公众号.

摈弃世俗浮躁,追求技术精湛
本帖已被设为精华帖!
Summer
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 6
Summer

嗯, Clockwork 最大的优点是利用 Chrome 的 Console, 不会对原有请求的输入造成干扰, 并且利用 Chrome Console 的特性, 允许保存多次请求的数据, 方便比较.

9年前 评论
Summer

但是, 对于 Chrome 的依赖, 也同时也是他最大的缺点 :smiling_imp:

9年前 评论
Summer

@zhengjinghua 偶尔紧急处理可以派上用场, 但是要小心呀, 暴露了太多数据.

9年前 评论

用了这个就不能用dd了么

5年前 评论

@Summer postgresql可以用这个clockwork包吗?

4年前 评论

能出个最新版本的使用教程么

3年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!