IE 8安全设置禁止javascript发送xmlHTTPRequest
IE 8 security settings prevents javascript to send xmlHTTPRequest
我面临的问题是,每当我在IE8中关闭安全设置时,在我的应用程序中,xmlHTTPRequest调用失败。然而,当我打开它,它的工作很好。安全特性是:工具-> Internet选项->高级->安全->启用原生xmlHTTP支持。如果检查了,则不会发生问题,但如果没有检查,则xmlHTTPReq将无法向服务器发送请求。(我在调试器窗口中没有看到cgi调用)。
所以我的问题是:是否有可能检测到这个安全设置是启用的还是不使用JavaScript编程?
我的cgi调用代码如下:
try{
var xmlHttpReq;
var destinationURL = cgiBinPath+"helloworld.cgi?start";
// IE 7+, Mozilla/Safari
if (window.XMLHttpRequest) {
xmlHttpReq=new XMLHttpRequest();
}
//IE 5,6
else {
xmlHttpReq = new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlHttpReq.readyState == 0){
xmlHttpReq.open('GET', destinationURL, true);
xmlHttpReq.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
xmlHttpReq.onreadystatechange = function(){
if(xmlHttpReq.readyState == 4){
//Control never reaches here
}
}
xmlHttpReq.send();
}
}catch(e){
alert('Exception '+e);
}
看一看这篇关于MSDN上原生XMLHTTP的文章。它还为您的问题提供了解决方案。
编辑对不起,我没有仔细阅读这篇文章。这个会回答你的问题。您必须尝试是否可以创建XMLHttpRequest
对象的实例。
if (window.XMLHttpRequest) {
try {
xmlHttpReq = new XMLHttpRequest();
} catch (ex) {
xmlHttpReq = new window.ActiveXObject("Microsoft.XMLHTTP");
}
} else {
//...
}
相关文章:
- 将照片从javascript发送到php
- javascript:发送带有音频文件的POST,然后重定向到新页面
- 使用JSFtp和Javascript发送文件
- 从函数javascript发送变量
- “未定义的索引:itemdetails”,当将JSON对象从JavaScript发送到PHP时
- 从c++向javascript发送消息
- 如何用javascript发送多个文件没有jQuery我想要每个文件一个进度条
- 如何在 ajax 中使用 javascript 发送多个数据并将其重定向到欢迎页面
- 使用自定义 SMTP 通过 JavaScript 发送电子邮件
- 有没有办法将值从JavaScript发送到CodeIgniter中的控制器
- 将变量从 Javascript 发送到 Javascript
- 如何在Joomla模块中通过JavaScript发送输入文件类型
- 使用javascript发送特殊字符
- 将图像从javascript发送到C#
- 将servlet请求从javascript发送到java给出了“;请求的资源不可用”;
- 如何将一个变量从javascript发送到django中的View
- 从javascript发送回车
- 如何在打开连接时从Javascript发送一些附加数据,如用户名或时间
- 将数据从javascript发送到html并使用php获取
- ASP.net web服务使用javascript发送命令