远程XUL

1 位贡献者:

如何加载远程服务器上的xul文件,而不是本机chrome协议的xul文件.

Gecko 2.0 note
(Firefox 4 / Thunderbird 3.3 / SeaMonkey 2.1)

可以加载远程XUL文件一直是一个潜在的安全问题;所以,从Gecko 2.0起,该功能已被基本禁用. 同样,你也不能加载本地 file:// 协议的XUL文件,除非你将选项dom.allow_XUL_XBL_for_file 设置为 true. 然而, 远程XUL文件并不是被完全禁用.存在一个可以向里面添加网址的白名单,该白名单中的远程XUL文件都可以被加载.扩展 Remote XUL Manager 提供了可以轻松管理这个白名单的界面, 其原理是调用了XPCOM接口 nsIPermissionManager, 来创建一条类型为"allowXULXBL"的记录, 核心代码如下:

Components.classes["@mozilla.org/permissionmanager;1"]
                    .getService(Components.interfaces.nsIPermissionManager)
                    .add(uri, 'allowXULXBL', Components.interfaces.nsIPermissionManager.ALLOW_ACTION);

查看 使用远程 XUL.

OReillyNet Article, Part 1 OReillyNet Article, Part 2

限制

查看 远程XUL bugs 了解远程XUL相比Chrome:// XUL的一些功能限制.

文档标签和贡献者

向此页面作出贡献: ziyunfei
最后编辑者: ziyunfei,