我们正在通过iframe从我们的网站(www.example.com)调用api服务器(api.example.com)。
当我们进行调用时,iframe 源 url 会将父窗口 url 更改为 iframe 源 url。下面给出的是 iframe 代码:
<iframe onload="iframeManager.tempIframeCallback()" id="xd_iframe" allowtransparency="true" frameborder="0" scrolling="no" tabindex="0" name="xd_iframe" style="position:absolute;top:-9999em;width:10px;height:10px;" src= "{{html on api server}}">
</iframe>
下面是 api 服务器上的 html:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<title>xyz</title>
<body>
<script type="text/javascript" charset="utf-8">
document.domain='example.com';
</script>
</body>
</html>
参考: http://fettig.net/weblog/2005/11/28/how-to-make-xmlhttprequest-connections-to-another-server-in-your-domain/
你提到的这篇文章写于2005年!现在,大多数现代浏览器都支持CORS,只要服务器允许,它允许您干净地执行跨源AJAX。这是一篇博客文章,解释了如何: http://www.nczonline.net/blog/2010/05/25/cross-domain-ajax-with-cross-origin-resource-sharing/