今天跟大家推荐小弟新研发的扩展,可以实时比较网址, 请求体,请求头,以及响应头。
扩展链接:Diff HTTP - Add-ons for Firefox
如何使用:
安装完成后,右击网页打开上下文菜单,选择 “检查元素”。Inspector 完成加载后,单击“Diff HTTP”栏目。浏览/刷新网页以实时捕获和区分网络 URLs 和其请求体/头。
简要:
此扩展在开发人员工具“Diff HTTP” 栏目中捕获网络流量,然后在符合“规则”的情况下将当前条目(URL /请求体/请求头/响应头)与以前的最匹配条目进行比较。第一个条目将标记为[新]([New]),第二项之后在满足规则和差异后可能标记为[新] / [差异] / [相同]([New]/[Diff]/[Same]) 中的任何一项。
请求体,响应头和请求头的选择取决于它的URL。
如果没有请求体,则标记为 [None],而如果之前和当前都没有,则标记为 [Same]。
如果与之比较的 URL 的响应头还未获得,则标记为 [Wait]。 一旦获得,则更新为 [Waited:[Same 或 Diff]。]
常见问题解答:
1. 隐私浏览暂不支持。
2. 如果在“Inspector”栏目加载完成之前单击“Diff HTTP”栏目,面板将显示为空白, bug 报告请参阅:https://bugzilla.mozilla.org/show_bug.cgi?id=1424515
3. 如果面板没有捕获任何 URLs,你可能需要将Firefox升级到最新版本(v58或v59)。v57 似乎不能。
4. 浏览 about:config -> devtools.theme -> 双击“black”值并将其编辑为“white”,能将开发工具黑色主题更改为白色。
幕后逻辑:
每当捕获的URL插入到表中时,内部的所有条目列表都将立即排序。由于列表总是被排序,所以它可以迅速选择两个前后条目。然后计算彼此的差异数,然后挑选差异数较小的条目。如果符合下面的“规则”,则被选择与当前条目进行比较。如果不符合“规则”,则会尝试第二个条目(之前差异数较大的那个)来测试“规则”。如果两个条目皆未能通过“规则”的测试,则放弃并标记当前输入为 [新] ([New])。
规则:
https://mozilla.org/video/foo/hi?q=1的网址将与https://mozilla.org/video/foo/hello?q=1进行比较,因为protocol:// path1 / path2 /(除了最后的路径)是相同的,即都有相同的前缀https://mozilla.org/video/foo
网址https://mozilla.org/video/foo/hi?q=1不会与https://mozilla.org/video/bar/hello?q=1比较,因为中间路径/ foo和/ bar 不同。
网址https://mozilla.org/video/foo/hi?q=1不会与https://mozilla.com/video/foo/hello?q=1比较,因为两个 "协议://主机名" 不同,即 https/ / /mozilla.org 不等于https://mozilla.com。
此规则被选择的原因是因为在两个URL之间的查询字符串/头的联系倾向于文件名/最后一个路径,而不是主机和中间路径。比起youku.com/video/a.mp4?time=21 与 youku.com/audio/b.m4a?time=21,你当然希望youku.com/video/a.mp4?time=21 与youku.com/video/b.mp4?time=21 。如果将zhihu.com与youku.com进行比较,就更没太大的意义了。但是小弟创建了一个名为“仅在主机相同的情况下比较差异”的按钮,以允许youku.com/video/a.mp4?time=21 和 youku.com/audio/b.m4a?time=21 比较。
一些特点:
1. 点击[Diff]标记的 URL条目能显示当前和以前的条目URL。
2. 如果 URL 条目没有足够的空间,能单击条目展开。
3. 点击请求体和请求头条目,能打开新悬浮窗口显示[之前][比较][当前] ([prev] [diff] [current]) 并排比较。
4. 悬停在按钮会显示功能提示框 (目前只有英文)。
5. 200 以外的状态码和 GET 以外的请求方法以粗体字显示,以方便辨认。
截图: