题
我正在尝试开发一个firefox扩展,将额外的HTTP头字段插入到传出的HTTP请求中(与我同时开发的apache扩展接口)。
虽然我理解了扩展的各个组件并理解了网络上提供的基本教程,但我发现很难从<!>“Hello World <!>”开始。教程扩展,开发一个完整的扩展。
我希望根据我的目的调整的示例代码显示在设置HTTP请求标头<的底部/ A>
我想知道,在扩展层次结构中应放置此代码的位置以及如何调用/构造/激活此代码,它是否会在扩展初始化时自动运行?
搜索结果 提前谢谢。
解决方案
对于基本扩展,您可以将代码放在扩展程序的chrome / content目录中。您可以使用叠加将此内容挂钩到Firefox中。虽然叠加通常是xul内容(按钮等),但它们可以是任何东西。包含一个脚本标记,可以加载你的Javascript代码。
其他提示
该代码是XPCOM组件并进入components/<some name>.js
文件。
如果你想挖掘它,你应该阅读XPCOM组件,但是,components
中的.js文件在启动时被加载。此类文件包含注册代码(从该示例中的var myModule = {
行开始),它告诉Firefox文件中定义的组件是否可根据请求提供,或者是否应自动实例化。
在该示例中,您可以看到已注册的组件被通知应用程序的启动:
catMgr.addCategoryEntry("app-startup", this.myName, this.myProgID, true, true);
当处理app-startup通知时,它会自行注册http-on-modify-request通知:
os.addObserver(this, "http-on-modify-request", false);
不隶属于 StackOverflow