@cliqz-oss/firefox-client

中文文档
0.3.1发布于 2018/03/13CommonJS近 30 天下载 2.7万

Firefox 远程调试客户端

中文使用文档
文档目录10 节
  1. 安装
  2. 连接中
  3. 桌面火花
  4. Android 的 Firefox 软件
  5. Firefox 操作系统1.1 模拟器
  6. Firefox OS 1.2+ (英语). 模拟器和装置
  7. 兼容性
  8. API 密码
  9. 实例
  10. 反馈

firefox 客户端

firefox-client 是一个 节点 用于远程调试 Firefox 的库。 你可以用它来制造事情 fxconsole 函数,一个远程JavaScript REPL.

var FirefoxClient = require("firefox-client");

var client = new FirefoxClient();

client.connect(6000, function() {
  client.listTabs(function(err, tabs) {
    console.log("first tab:", tabs[0].url);
  });
});

安装

与 节点.js npm 软件包管理器 :

npm install firefox-client

连接中

桌面火花

  1. 启用远程调试( 您只需做一次)

  2. 开德佛道. Web 开发者 > 翻译: 切换工具

  3. 访问设置面板( 工具图标)

  4. 在高级设置下检查“ 允许远程调试”

  5. 听一个连接

  6. 打开 Firefox 命令行 工具 > 翻译: Web 开发者 > 翻译: 开发者工具栏。 。 。 .

  7. 通过输入此命令启动服务器 : listen 6000 (何处) 6000 是端口号码)

Android 的 Firefox 软件

执行指令 这个哈克视频

Firefox 操作系统1.1 模拟器

一套有限的API(Console, (中文(简体) ), StyleSheets)与 模拟 4.0见 维基指令 用于连接.

client.listTabs() 将列出模拟器中当前打开的应用程序 .

Firefox OS 1.2+ (英语). 模拟器和装置

client.getWebapps() 将曝光模拟器中的 Webapps, 每个应用程序执行 Tab API (英语).

client.getWebapps(function(err, webapps) {
  webapps.getApp("app://homescreen.gaiamobile.org/manifest.webapp", function (err, app) {
    console.log("homescreen:", actor.url);
    app.Console.evaluateJS("alert('foo')", function(err, resp) {
      console.log("alert dismissed");
    });
  });
});

兼容性

此库的最新版本将保持兼容性 夜来火狐。几乎全部将兼容 火狐奥罗拉 还有.

API 密码

A 类 FirefoxClient 是 API 的切入点。 连接后,得到一个 Tab 对象为 listTabs() 或者说 selectedTab()。一旦你有一个 Tab,你可以调用方法,并听从标签模块中的事件, Console 或者说 Network。还有实验 DOM 财务报告和审定财务报表 StyleSheets 选项卡模块,以及即将到来的 Debugger 模块.

方法

API 几乎所有的呼叫都使用一个调用回调,它会以错误被调用作为第一个参数(或 null 如果没有出错,则返回值为第二个值:

tab.Console.evaluateJS("6 + 7", function(err, resp) {
  if (err) throw err;

  console.log(resp.result);
});

活动

模块是 EventEmitters, 倾听事件 on 或者说 once,停止倾听 off数字 :

tab.Console.on("page-error", function(event) {
  console.log("new error from tab:", event.errorMessage);
});

单元和物品的提供情况摘要:

火狐浓度

方法: connect(), (中文(简体) ), disconnect(), (中文(简体) ), listTabs(), (中文(简体) ), selectedTab(), (中文(简体) ), getWebapps(), (中文(简体) ), getRoot()

活动 : "error", (中文(简体) ), "timeout", (中文(简体) ), "end"

标签

属性 : url, (中文(简体) ), title

方法: reload(), (中文(简体) ), navigateTo(), (中文(简体) ), attach(), (中文(简体) ), detach()

活动 : "navigate", (中文(简体) ), "before-navigate"

标签。 控制台

方法: evaluateJS(), (中文(简体) ), startListening(), (中文(简体) ), stopListening(), (中文(简体) ), getCachedLogs()

活动 : "page-error", (中文(简体) ), "console-api-call"

JS 目标

属性 : class, (中文(简体) ), name, (中文(简体) ), displayName

方法: ownPropertyNames(), (中文(简体) ), ownPropertyDescriptor(), (中文(简体) ), ownProperties(), (中文(简体) ), prototype()

标签。 网络

方法: startLogging(), (中文(简体) ), stopLogging(), (中文(简体) ), sendHTTPRequest()

活动 : "network-event"

网络活动

属性 : url, (中文(简体) ), method, (中文(简体) ), isXHR

方法: getRequestHeaders(), (中文(简体) ), getRequestCookies(), (中文(简体) ), getRequestPostData(), (中文(简体) ), getResponseHeaders(), (中文(简体) ), getResponseCookies(), (中文(简体) ), getResponseContent(), (中文(简体) ), getEventTimings()

活动 : "request-headers", (中文(简体) ), "request-cookies", (中文(简体) ), "request-postdata", (中文(简体) ), "response-start", (中文(简体) ), "response-headers", (中文(简体) ), "response-cookies", (中文(简体) ), "event-timings"

标签.DOM

方法: document(), (中文(简体) ), documentElement(), (中文(简体) ), querySelector(), (中文(简体) ), querySelectorAll()

多摩多语种

属性 : nodeValue, (中文(简体) ), nodeName, (中文(简体) ), namespaceURI

方法: parentNode(), (中文(简体) ), parents(), (中文(简体) ), siblings(), (中文(简体) ), nextSibling(), (中文(简体) ), previousSibling(), (中文(简体) ), querySelector(), (中文(简体) ), querySelectorAll(), (中文(简体) ), innerHTML(), (中文(简体) ), outerHTML(), (中文(简体) ), setAttribute(), (中文(简体) ), remove(), (中文(简体) ), release()

标签。 样式表

方法: getStyleSheets(), (中文(简体) ), addStyleSheet()

样式表

属性 : href, (中文(简体) ), disabled, (中文(简体) ), ruleCount

方法: getText(), (中文(简体) ), update(), (中文(简体) ), toggleDisabled(), (中文(简体) ), getOriginalSources()

活动 : "disabled-changed", (中文(简体) ), "ruleCount-changed"

标签。 内存

方法: measure()

网络应用程序

方法: listRunningApps(), (中文(简体) ), getInstalledApps(), (中文(简体) ), watchApps(), (中文(简体) ), unwatchApps(), (中文(简体) ), launch(), (中文(简体) ), close(), (中文(简体) ), getApp(), (中文(简体) ), installHosted(), (中文(简体) ), installPackaged(), (中文(简体) ), installPackagedWithADB(), (中文(简体) ), uninstall()

活动 : "appOpen", (中文(简体) ), "appClose", (中文(简体) ), "appInstall", (中文(简体) ), "appUninstall"

实例

fxconsole 函数 - Firefox 的远程JavaScript控制台

webapps 测试脚本 - 所有网络应用功能的样本使用

反馈

你从API那里需要什么? 提交一个问题。 。 。 .

版本与发布记录

@cliqz-oss/firefox-client 共发布 1 个版本,首次发布于 2018/03/13;过去 12 个月发布了 0 个版本。

版本发布日期距今
0.3.1latest2018/03/138 年前

关于 @cliqz-oss/firefox-client 的常见问题

@cliqz-oss/firefox-client 是什么?

Firefox 远程调试客户端

如何安装 @cliqz-oss/firefox-client?

在项目目录运行 npm install @cliqz-oss/firefox-client,或使用 pnpm add / yarn add / bun add。

@cliqz-oss/firefox-client 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/cliqz-oss__firefox-client 是否存在。

@cliqz-oss/firefox-client 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@cliqz-oss/firefox-client 可以商用吗?

@cliqz-oss/firefox-client 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@cliqz-oss/firefox-client 的下载量有多少?

根据 npm 官方下载统计,@cliqz-oss/firefox-client 在 2026/10/10 – 2026/11/08 这 30 天内被下载 26,720 次,日均约 891 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cliqz-oss/firefox-client 还在维护吗?

最新版本 0.3.1 发布于 2018/03/13(8 年前);至今共发布 1 个版本,其中过去 12 个月发布了 0 个;首次发布于 2018/03/13。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。