javascript获取/发布跨域限制和facebook / google + like框

时间:2012-06-25 09:32:34

标签: jquery facebook-like cross-domain jquery-get

据我所知,存在跨域重复,不允许您从外部URL获取内容,为了克服这个问题,我们使用服务器端脚本。

我想知道facebook / google如何克服这些限制,并使用javascript代码管理生成类似框的简单代码:

<div id="fb-root"></div>
<script>(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) return;
  js = d.createElement(s); js.id = id;
  js.src = "//connect.facebook.net/en_US/all.js#xfbml=1&appId=254277301328504";
  fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script>

我问的原因是因为我正在建立一个虚拟聊天机器人,并希望用户只使用一个简单的javascript在他们的网站中生成机器人(在外部域上,而不必使用服务器端脚本)

由于

1 个答案:

答案 0 :(得分:0)

  

据我所知,有跨域撤销不允许您从外部网址获取内容

不通过“普通”XMLHttpRequest。但这并不意味着根本无法加载外部资源。 JSONP将是它如何工作的一个例子。

  

我想知道facebook / google如何克服这些限制

他们在您的网页内部创建一个iframe元素,并将文档从他们自己的域加载到其中。因此,他们没有任何问题从iframe中的页面与他们自己的域进行通信 - 因为该通信根本不是 跨域。