我目前正在尝试将chrome扩展程序移植到firefox(addon-sdk)。但是我提出了一些移植pac脚本功能的问题。
通过chromes扩展API设置代理时,可以在pac脚本对象中将PAC脚本设置为字符串(参考:http://developer.chrome.com/extensions/proxy.html#type-PacScript)
在Firefox中看,没有类似的东西。我看到的唯一选择是从网址(http://kb.mozillazine.org/Firefox_:FAQs:_About:config_Entries)中提取脚本。我的问题是,当用户调整插件设置时,pac脚本必须更改并做出反应。
是否有(hacky)方式在Firefox中完成类似的操作?
我提出的唯一解决方案是对用户选项进行编码并将其发布到pac脚本服务器。服务器解析它们并创建符合需求的脚本。我想避免不惜任何代价使用服务器,因为这会导致另一种依赖!
答案 0 :(得分:2)
您可以使用data: URI作为PAC文件。动态生成它很容易:
var pacScript = "function FindProxyForURL(url, host){return 'DIRECT';}";
var uri = "data:text/javascript," + encodeURIComponent(pacScript);
alert(uri);