我写的Firefox使用自定义的.pac脚本。 下面我见过无数的例子,我为了调试它点缀警报()S中,但没有警告弹出,即使显然被调用的脚本。 (我每次更改我的剧本后,点击“刷新”,在“连接设置”,我甚至试图重新启动Firefox浏览器。)
被警告应该从PAC脚本的工作? 也许这是一个IE浏览器特有的功能?
我写的Firefox使用自定义的.pac脚本。 下面我见过无数的例子,我为了调试它点缀警报()S中,但没有警告弹出,即使显然被调用的脚本。 (我每次更改我的剧本后,点击“刷新”,在“连接设置”,我甚至试图重新启动Firefox浏览器。)
被警告应该从PAC脚本的工作? 也许这是一个IE浏览器特有的功能?
http://mxr.mozilla.org/mozilla-central/source/netwerk/base/src/nsProxyAutoConfig.js
报警功能被添加到沙箱:
80 // add predefined functions to pac
81 this._sandBox.importFunction(myIpAddress);
82 this._sandBox.importFunction(dnsResolve);
83 this._sandBox.importFunction(proxyAlert, "alert");
而映射函数调用转储,都到错误控制台:
108 function proxyAlert(msg) {
109 msg = XPCSafeJSObjectWrapper(msg);
110 try {
111 // It would appear that the console service is threadsafe.
112 var cns = Components.classes["@mozilla.org/consoleservice;1"]
113 .getService(Components.interfaces.nsIConsoleService);
114 cns.logStringMessage("PAC-alert: "+msg);
115 } catch (e) {
116 dump("PAC: proxyAlert ERROR: "+e+"\n");
117 }
啊哈! 警报消息越来越登录到控制台。 其实我更喜欢的是反正提醒弹出窗口。
使用alert
在函数.pac
文件。
在Firefox浏览器:
工具 - > Web开发者 - > 浏览器控制台(按Ctrl + Shift + J)[这不是Web控制台 !!] - >过滤器输出: PAC-alert
在Chrome浏览器:
转到chrome://net-internals/#events
- >搜索与描述记录: PAC_JAVASCRIPT_ALERT
(关于Chrome感谢这样的回答: https://serverfault.com/a/738871 )
样品.pac
文件:
function FindProxyForURL(url, host) {
alert("url = " + url + " *** host = " + host + " *** Resolved IP = " + dnsResolve(host));
return "DIRECT";
}
您可能需要在Windows注册表来禁用“EnableAutoproxyResultCache”。 。 。