【问题标题】:modify response header without using xpcom in firefox在 firefox 中不使用 xpcom 修改响应头
【发布时间】:2013-09-09 17:56:03
【问题描述】:

我是扩展开发的新手。我的要求是创建一个简单的扩展来修改一些响应标头并向 http 响应添加一些新标头。我正在查看一些插件,例如重新配置和内联配置。前者不使用 xpcom 做同样的工作,后者使用 xpcom。前者也有 xul (gui) 组件。 现在,如果扩展没有覆盖(gui 组件),是否可以修改响应。

【问题讨论】:

  • 我假设您将XPCOM(跨平台组件对象模型)与XUL(GUI 标记语言)混淆了...

标签: javascript firefox-addon xpcom


【解决方案1】:

您不需要 GUI。

有几种方法可以让您的代码运行:

  • 创建一个引导式(无需重启)插件,就像ReDisposition(不需要GUI 部分)并从您的bootstrap.js 注册。
  • 创建一个 SDK 插件并通过您的 main.js 注册。
  • 创建一个 XPCOM 组件并将其注册为 profile-after-change(基本上是在启动时运行)并在组件加载后注册。
  • 或者有一个存根覆盖,它只会加载一个JS code module 并在模块中注册。 (我的口味有点老套,但无论如何)。

不管怎样,不管你用什么方法,不管用什么方法,你都需要注册观察http-examine-response和朋友们

请参阅MDN 了解更多文档(以及 wiki)。

除此之外,您的问题过于笼统,无法告诉您一些不太笼统的内容。

【讨论】:

  • @nmaler 我将使用自举插件。当我从重新配置的 bootstrap.js 文件中删除 gui 内容时,它不起作用。老实说,我仍在努力弄清楚如何调试扩展。我按照所有说明进行操作,但在 Web 控制台中没有看到任何错误。这是修改后的代码:pastebin.com/YDVz0Wtj
  • 错误将被记录到错误控制台(或浏览器控制台,如果您使用最先进的 Firefox)。请不要在 cmets 中隐藏更新。更新您的问题,或者在范围发生根本性变化时提出新问题。
  • 但简而言之:Exception: _ is not a function; ReDisposition@Scratchpad/1:423。您注释掉了 _ 函数初始化,但没有注释掉后来对 _() 的调用,例如像 423 一样。
  • @nmaler 实际上代码很长,会造成混乱。谢谢您的帮助。除了这个错误,是否还有其他错误。
猜你喜欢
  • 2011-02-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多