产品战略专家梁宁确认出席AICon北京站,分享AI时代下的商业逻辑与产品需求 了解详情
写点什么

Firebug 与 DevTools 整合

  • 2015-11-30
  • 本文字数:2074 字

    阅读完需:约 7 分钟

为了进一步提供更将强大的功能,Mazilla 的工程师近期一直在努力进行原生 Firefox 开发者工具( DevTools )和 Firebug 的整合工作。Firebug 团队的领袖 Jan Honza Odvarko 近日披露了该项目的进展情况。

作为网页浏览器 Mozilla Firefox 下的一款开发类插件,Firebug 集中了HTML 查看和编辑、Javascript 控制台、网络状况监视器等多种功能,是开发JavaScript、CSS、HTML 和Ajax 的有效工具。然而,Firebug 之前一直不能和原生Firefox 开发者工具(DevTools)结合起来。最近一段时间,Mazilla 的工程师开始了把原生Firefox 开发者工具(DevTools)和Firebug 的整合工作。该项目努力把所有的Firebug 特性移植到DevTools 中,使得其兼容多进程,并支持远程调试。而且,项目努力保证从Firebug 到DevTools 的转变过程尽可能平缓和简单,不影响用户体验。接下来,本文就从 Firebug 3 以及新的插件入手介绍该项目进展。

Firebug 3
最新版的 Firebug 3 已经不是一个单独的工具,而是 DevTools 之上的一个外壳。它为 DevTools 提供了与之前版本 Firebug 相同的主题。用户可通过点击Firebug Theme选项打开主题。Firebug 3 为 DevTools 带来了 UI 和布局上的好处,并提供了经典的 Firebug 开始按钮。用户通过开始按钮或者F12快捷键即可访问开发者工具箱。
而且,新版的 Firebug 继续提供 DOM 面板和 Console 面板,分别供用户审查页面的文档对象模型和预览 XHR。
此外,整合后的工具还在 DevTools 之上重新实现了很多流行的扩展。这些扩展不仅保证了很多流行特性的使能,还为用户提供了创建新扩展的案例。

FireQuery 扩展

FireQuery 是 Firefox 中、基于 DevTools 的 jQuery 开发插件。此插件并不需要 Firebug 3,但是可以在 Fierbug 主题中使用。在其 Console 面板中,和 jQuery 数据相关联的元素会显示一个小信封。开发者点击这些图标就可以审查相应数据。而且,用户还可以利用 Console 面板中的 jQuerify 按钮来加载 jQuery 到当前页面。此外,点击 Inspector 面板中的信封图标这可以显示相关细节。
目前,用户已经可以通过 AMO 下载该扩展,并通过在线的测试页面进行尝试。

PixelPerfect 扩展

PixelPerfect 是一个允许网页开发人员和设计人员把很多半透明层覆盖在一个网页组件的 Firefox 扩展。这些层可以被用作页面和层之间的逐像素比较。用户可以通过 Firefox 中的 Pixel Perfect 开始按钮直接打开其 UI 界面,配置相关参数。目前,用户已经可以通过 AMO 下载该扩展。

导出 HAR

支持从 Network 面板中导出 HAR 已经成为浏览器内置的特性。用户只需要选择 Network 面板,并依次执行 Copy All As HAR 和 Save All As HAR 即可。该过程一般可以自动化进行。而如果用户需要为每一个加载的页面创建一个 HAR 文件,只需要设置下列选项即可:

DevToolss.netmonitor.har.enableAutoExportToFile为了提供更多的灵活性,Mozilla 推出了 HARExportTrigger 扩展。该扩展支持利用脚本来完成 HAR 的导出工作。以下就是从 Network 面板中获取 HAR 数据的示例脚本。

复制代码
var options = {
token: "test",
getData: true,
};
HAR.triggerExport(options).then(result => {
console.log(result.data);
});

目前,用户已经可以通过 AMO 下载该扩展。

在服务器上使用`console.*``API

Firebug 社区开发了很多扩展来支持在服务器端使用console.*API。这样,用户就可以在浏览器中查看后端的日志文件。目前,Firefox 已经内置了该特性,无需安装其他任何扩展。用户只需要在 Console 面板中时能服务器列表中的 Log 选项即可。

该特性支持通过 HTTP 头发送日志到客户端的协议。如果这些日志是通过页面中的 JavaScript 产生,它们就可以显示在 Console 面板中。而且,有很多服务器端的库可以提供各种语言版本(NodeJS、Puby、Python、PHP、.NET 和 Java 等)的服务器端 API。

以下为服务器端记录日志的例子

复制代码
var chromelogger = require('chromelogger');
var http = require('http');
var server = http.createServer();
server.on('request', chromelogger.middleware);
server.on('request', function(req, res) {
res.chrome.log('Hello from Node.js %s', process.version);
res.end();
});
server.listen(7357);

在 Console 面板中所看到的对应服务器端日志文件如下所示:

最后, Jan 表示,Firebug 和 DevTools 的合并工作已经取得一定的进展,但还有很多工作在进行。如果有用户任何意见和建议,可以直接联系 Firebug 组。该消息一经发布便引来网友热烈讨论。有网友提出目前的工具还不支持Cookie 编辑、浏览websocket 帧等,希望下一步能够有所改善。而另有网友则坚持认为Firebug 2 已经能够很好的处理调试相关的问题,对新工具表示一定的怀疑。此外,网友还对Chrome 和Firefox 的开发体验进行了比较,提出firefox 支持更加快速、轻量的开发。


感谢徐川对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2015-11-30 18:005239
用户头像

发布了 268 篇内容, 共 122.3 次阅读, 收获喜欢 24 次。

关注

评论

发布
暂无评论
发现更多内容

更高效、更实用的跨端开发选择

FinFish

flutter finclip 小程序容器 跨端框架

拆分电商系统为微服务

Geek_e5f2e5

设计消息队列存储消息数据的 MySQL 表格

Geek_e5f2e5

浅谈基于Web的跨平台桌面应用开发

京东科技开发者

Web 跨平台 nodejs 桌面端 企业号 3 月 PK 榜

软件测试/测试开发 | 测试平台开发-前端开发之Vue router路由设计

测试人

软件测试 测试开发 测试平台

下一站,冠军|走进2022 OceanBase数据库大赛12强

OceanBase 数据库

数据库 oceanbase

架构训练营-模块六作业

Sam

架构实战营

「Go工具箱」Pie :一个高性能、类型安全的slice操作库

Go学堂

golang 开源 程序员 个人成长

Soul 云原生网关最佳实践

阿里巴巴中间件

阿里云 云原生 实践 云原生网关

BI工具数据看板对比:瓴羊Quick BI与Smart BI

流量猫猫头

SkyWalking实现 Dubbo 微服务实现链路跟踪案例以及对接钉钉告警

忙着长大#

极客时间

OpenKruise 开发者不容错过的带薪实习机会!马上加入 LFX Mentorship 计划

阿里巴巴中间件

阿里云 开源 云原生 OpenKruise

ChatGPT辅助编程

鲸品堂

ChatGPT 企业号 3 月 PK 榜

软件测试/测试开发 | 测试平台开发-前端开发之Vue.js 框架的使用

测试人

ChatGPT 是真的银弹吗? | 社区征文

宇宙之一粟

Go 思考 后端 征文投稿 ChatGPT

ICLR 2023 | 网易伏羲3篇论文入选,含强化学习、自然语言处理等领域

网易伏羲

纵存科技加入龙蜥社区,共建高性能存储软件栈

OpenAnolis小助手

开源 合作伙伴 龙蜥社区 CLA 纵存科技

王者荣耀商城异地多活架构设计

Geek_e5f2e5

我,30岁程序员被裁员了,千万别干全栈

程序员晚枫

程序员 裁员 大龄求职

2022 IoTDB Summit:阿里白渐《迈向物联网时代大数据计算平台——MaxCompute 基于IoTDB构建解决方案》

Apache IoTDB

大数据 时序数据库 IoTDB

三天吃透mybatis面试八股文

程序员大彬

Java mybatis

微服务引擎 MSE 企业版全新升级

阿里巴巴中间件

阿里云 微服务 云原生

开心档之Swift 访问控制访问控制

雪奈椰子

开心档

使用 Pulumi 打造自己的多云管理平台

亚马逊云科技 (Amazon Web Services)

Amazon S3

BaseAdapter优化

梦笔生花

ConversionService baseadapter viewholder

低代码生成器 | 放开双手,专注业务,一键生成项目基础结构 + 重复代码

IT学习日记

开源项目 脚手架 代码自动生成 自动搭建项目

「Go框架」平滑关闭:要关闭服务,未处理完的请求怎么办?

Go学堂

golang 个人提升 平滑重启 程序员、 gin框架

Tuxera NTFS2023版读写NTFS磁盘功能工具

茶色酒

Tuxera NTFS2023

隐私计算技术路线介绍及对比

隐语SecretFlow

隐私计算

2022年证券行业年度专题分析

易观分析

金融 证券 经济

小程序容器作为软件中间件技术不可忽视的价值

FinFish

小程序容器 小程序技术 软件中间件

Firebug与DevTools整合_语言 & 开发_张天雷_InfoQ精选文章