我想调查facebook登录如何将数据传输到主页面(mypage) - 尽管跨域限制.
所以我用FB js sdk代码创建了一个新页面:
FB.login(function (response)
{
if (response.authResponse)
{...
Run Code Online (Sandbox Code Playgroud)
它确实打开了弹出窗口:

但是当我调查我的页面上是否有任何Iframe 时(我的代码不包含任何iframe):
我看到了这个 :
>>$("iframe")
Run Code Online (Sandbox Code Playgroud)
结果:
[
<iframe name=?"fb_xdm_frame_http" frameborder=?"0" allowtransparency=?"true" scrolling=?"no" id=?"fb_xdm_frame_http" aria-hidden=?"true" title=?"Facebook Cross Domain Communication Frame" tab-index=?"-1" src=?"http:?/?/?static.ak.facebook.com/?connect/?xd_arbiter.php?version=24#channe…l_path=%2FWebSite2%2FHTMLPage3.htm%3Ffb_xd_fragment%23xd_sig%3Df5252874%26" style=?"border:? none;?">?…?</iframe>?
,
<iframe name=?"fb_xdm_frame_https" frameborder=?"0" allowtransparency=?"true" scrolling=?"no" id=?"fb_xdm_frame_https" aria-hidden=?"true" title=?"Facebook Cross Domain Communication Frame" tab-index=?"-1" src=?"https:?/?/?s-static.ak.facebook.com/?connect/?xd_arbiter.php?version=24#cha…l_path=%2FWebSite2%2FHTMLPage3.htm%3Ffb_xd_fragment%23xd_sig%3Df5252874%26" style=?"border:? none;?">?…?</iframe>?
]
Run Code Online (Sandbox Code Playgroud)
我读到它们用于跨域.
但问题是为什么他们在MY PAGE上 ?
他们应该在Facebook内部页面的某个地方!
我这么说是因为我知道iframe技术的工作原理如下:

如您所见 - 内部Iframe 使用查询字符串中的值创建另一个 iframe SRC(该值实际上是首页url),然后,在两个页面上使用JS + URL => JS …