【问题标题】:Which framework for browser plugin works for all browsers in Linux [closed]哪个浏览器插件框架适用于 Linux 中的所有浏览器 [关闭]
【发布时间】:2012-10-07 07:25:18
【问题描述】:

我正在为 Linux 创建一个浏览器插件。它应该支持所有的浏览器——firefox、chrome、opera。我选择了firebreath,但它似乎不支持Linux 中的opera。有没有更好的选择!

【问题讨论】:

  • 你为什么要把它做成一个浏览器插件,你的插件的预期功能和作用是什么???
  • 我想为外部下载管理器的浏览器集成创建一个插件。浏览器插件应阻止默认的内置下载管理器下载,并应将下载 url 传递给外部下载管理器。

标签: c++ linux browser opera firebreath


【解决方案1】:

浏览器插件不会做你想做的事。浏览器插件不能“阻止默认 [内置] 下载管理器下载”或“将下载 url 传递给 [an] 外部下载管理器”。浏览器插件只知道单个页面,并且只有当它们被注入到带有 object/embed 标记的页面或加载以处理具有特定 mimetype 的文档时。

有关差异的更多信息,请参阅http://npapi.com/extensions

在 Google 上快速搜索浏览器扩展框架会产生多种可能性:

我不知道他们是否在 linux 上工作。

注意:虽然您需要浏览器扩展,但最终解决方案可能涉及使用浏览器插件的浏览器扩展,在这种情况下,FireBreath 可能是您的最佳选择赌注。我不知道为什么 Opera on linux 不能工作(尽管我以前从来没有人问过这个问题),你只需要弄清楚 Opera 期望插件在哪里。 FireBreath 在 linux 上创建 NPAPI plugins,opera 应该支持这些。

【讨论】:

  • 在网站 firebreath.org 中提到,Linux 仅支持 chrome 和 firefox。无论如何,如果它支持 Opera,那么 FireBreath 是最好的。此外,DAP、IDM等众多下载管理器仅使用NPAPI插件即可实现浏览器与opera的集成,无需扩展(addon)。我可以使用我的插件注册与不同文件相关的所有 mime 类型。因此,浏览器会简单地调用所有文件 mime 类型的插件,然后插件会调用下载管理器。这不是可能吗。这其实是我的第一个NPAPI项目,所以了解的不多。
  • 首先,我写了 FireBreath,所以你可以相信我所说的有效。我们没有用 Opera 测试它,所以不支持它,但这并不意味着它不能工作,只是如果有什么不支持,你就必须自己做。其次,除非您关心的所有文件类型都是其他人都不关心的类型,否则您会自找麻烦,试图成为所有这些类型的处理程序。大多数 NPAPI 下载管理器只有一个用于下载文件的 javascript 接口,它们实际上并不能在所有页面上自动运行
  • 那么,你最后推荐什么。我应该使用扩展而不是插件还是只使用插件,如果它可能会带来一些麻烦。
  • 这完全取决于您需要做什么。如果您可以使用 javascript API 来驱动下载管理器而不是自动运行,那么请使用插件。如果您需要它是自动的,那么构建一个扩展。请出于对所有编译代码的喜爱,不要尝试将您的插件注册为所有合理 mimetype 的处理程序,以便您可以被调用来下载它们。那是个坏主意。
猜你喜欢
  • 2010-11-04
  • 1970-01-01
  • 2010-11-05
  • 1970-01-01
  • 2023-03-26
  • 1970-01-01
  • 2015-03-17
  • 2023-03-13
  • 1970-01-01
相关资源
最近更新 更多