如何使用jQuery ajax在不同的主机上检索和显示html / asp / aspx页面?

时间:2012-04-03 16:58:07

标签: javascript jquery html ajax same-origin-policy

我有一个html页面,它是http://host2.mydomain.com上动态创建的asp / aspx页面。 我无法控制html页面。我不能以任何这种方式修改它。我无法修改此页面;所以,不幸的是,设置document.domain是不可能的。这个html页面是由第三方供应商编译的,代码是close-source;我无法查看或更改它。  我想使用Ajax在http://host1.mydomain.com/page1.jsp上检索并显示此页面。

仅供参考:host1由IIS 7和Apache Tomcat(用于JSP页面)提供服务。而host2正在使用IIS 7和ASP。

如何使用Ajax POST请求检索此页面?

谢谢。

5 个答案:

答案 0 :(得分:1)

由于跨域策略,您不能使用标准的AJAX调用,您必须使用JSONP或JSONP http://en.wikipedia.org/wiki/JSONP

的形式

此外,常见的“问题”是跨域策略也会阻止对非安全性ajax的安全性。因此,https://页面无法请求http://页面,反之亦然/

答案 1 :(得分:1)

答案 2 :(得分:1)

如果您使用的是现代浏览器,请设置正确的CORS标头。看看here

答案 3 :(得分:1)

您只是跨越子域名,因此可以使用iframe进行操作,请查看此问题 - A question about cross-domain (subdomain) ajax request

引用的解决方案:http://www.tomhoppe.com/index.php/2008/03/cross-sub-domain-javascript-ajax-iframe-etc/

答案 4 :(得分:1)

您编写了一个服务器端脚本来检索页面内容,然后使用Ajax来请求您的脚本