Javascript 跨站点XmlHttp(XDomainRequest)

Javascript 跨站点XmlHttp(XDomainRequest),javascript,ajax,internet-explorer,internet-explorer-8,xdomainrequest,Javascript,Ajax,Internet Explorer,Internet Explorer 8,Xdomainrequest,我正在为我的公司编写一个基于web的工具,它运行在本地intranet上,运行在IE8中。我相信,由于公司的计算机处于SOE中,除了IT部门之外,没有人可以控制浏览器设置,他们不太可能做出任何更改,至少不会在我们需要的时间范围内进行更改 我对“受信任的站点”(也在本地intranet上)中的URL有一个XmlHTTP请求,但当我发送请求时,我得到一个异常:“访问被拒绝”,当我捕获异常并将其输出到我的页面时,我得到“TypeError:访问被拒绝” 有没有办法让IE8完成这个AJAX请求 编辑:进

我正在为我的公司编写一个基于web的工具,它运行在本地intranet上,运行在IE8中。我相信,由于公司的计算机处于SOE中,除了IT部门之外,没有人可以控制浏览器设置,他们不太可能做出任何更改,至少不会在我们需要的时间范围内进行更改

我对“受信任的站点”(也在本地intranet上)中的URL有一个XmlHTTP请求,但当我发送请求时,我得到一个异常:“访问被拒绝”,当我捕获异常并将其输出到我的页面时,我得到“TypeError:访问被拒绝”

有没有办法让IE8完成这个AJAX请求

编辑:进一步研究发现,问题可能与受信任的站点/本地intranet无关。显然,您无法执行跨域XmlHttp请求。我的系统是通过IP地址访问的,而我的AJAX脚本的目标站点(仍然是本地的)是一个域,它解析为不同的IP地址。不幸的是,我已经尝试编写一个PHP脚本,它将从服务器端获取页面,但是它也拒绝在没有用户名/密码的情况下进行连接


在这个阶段,我愿意接受任何关于如何解决这个问题的黑客建议。如果我能让这个功能工作,它将为我们节省数天的手动输入数据。

是的,无论请求是否在同一台服务器上,都不能执行跨域XmlHttp请求。 我不知道你想实现什么,但是你不能用你列出的标签来实现

你应该考虑一些编程。
您可以在任何想要的编程中创建一个小代理页面,并使那些XmlHttp请求抛出该代理。

由于IE8不支持,您要么使用代理,要么使用相同的IP进行请求,要么在相同的IP下获取所有内容

该页面必须从客户端访问,服务器无法访问我试图刮取的页面。总有办法做到这一点。。。研究您的选项同一来源策略适用于不同的域、协议和端口,而不是不同的IP;)。看见然而,+1表示JSONP选项,这是目前唯一的交叉浏览器实现这一点的方法(一些浏览器有保护变量,可以通过javascript来实现,但不同)。1)不幸的是,我无法控制目标服务器的IP,2)服务器没有JSONP代码-我目前使用的代码下载html内容,并找到一个特定元素来获取我需要的内容。@Ozzah,听起来你运气不好,除非你能找到一个代理来工作或与其他服务器一起工作,并让他们返回你可以使用的内容。:)这个答案是不正确的-IE8绝对支持跨源资源共享规范。它在XMLHttpRequest中不支持它,但CORS是一个独立的标准,可以应用于任何事情。IE8和IE9在XDomainRequest中具有CORS支持。当然不太理想,但它仍然是一个(大部分)有效的实现。