今天发现一个很郁闷的问题,折腾了一整天,才发现是什么原因。
写出来供大家参考,以后大家碰到此类问题有个数。问题如下:
有以下一段代表
function Login(username,password,geturl) { var xmlhttp = null;try{ xmlhttp = new ActiveXObject("MSXML2.XMLHTTP")}catch(e){ xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");}xmlhttp.open("GET", geturl, false, username, password);xmlhttp.SetRequestHeader("Accept-Language","zh-cn");xmlhttp.send();}
目的是使用用户名密码,对相应路径的进行登录。
但是发现,在公司一台计算机上(后台简称pc1),执行到xmlhttp.open这句时无论如何都报错。而其它计算机又是对的。更奇怪的的,pc1打开另一个站点的页面(同样包含以上代码),却又正常。经过组件安装,安全设置……一系列测试,问题依然存在。
后来才发现,有问题的这个站点被加在pc1的受信任站点中,只要将站点url从pc1的受信任站点中移除,以上javascript代码就能正常运行。
到其它计算机上测试,结果都相同,就是把站点加入信息站点列表,上面的javascript代码执行至xmlhttp.open时就会出现异常,移除就正常。
有谁知道这是为什么吗?