3

我正在尝试在我的网站上使用 iframe 版本的 Facebook 注册插件,但我遇到了重定向目标问题。

在我的网站上,页面中间有一个 iframe;当用户单击“注册”时,我希望 iframe 导航到 redirect_uri,将浏览器留在我的网站上。我的印象是,这可以通过更改“目标”属性来完成,如属性表中所述:https ://developers.facebook.com/docs/plugins/registration/

似乎默认值 target="_top" 应该导致浏览器窗口导航到 redirect_uri,而设置 target="_self" 应该只导致 iframe 导航到 redirect_uri。但是,我所做的一切似乎都无法改变这种默认行为。

这是 iframe 的代码(应用 ID 和重定向 URI 已编辑)

<iframe src="https://www.facebook.com/plugins/registration?
       client_id=MY_APP_ID&
       target=_self&
       redirect_uri=MY_URI&
       fields=name,birthday,gender,email"
       scrolling="auto"
       frameborder="no"
       style="border:none"
       allowTransparency="true"
       width="600"
       height="280">
</iframe>

对于目标行,我也尝试过编码引号:

target=%22_self%22&

其他一些问题解决了这个问题,但尚未得到充分回答。

在这里,错误链接无效: http: //facebook.stackoverflow.com/questions/6105321/facebook-registration-plugin-forms-target-problem

在这里,没有答案: http: //facebook.stackoverflow.com/questions/7829656/why-doesnt-the-target-attribute-work-on-the-facebook-registration-plugin

在这里,一个答案表明使用预填充信息时目标属性被破坏,这没有记录并且似乎没有任何意义: http: //facebook.stackoverflow.com/questions/7809805/facebook-registration -plugin-not-redirecting-sending-data-of-logged-in-users

任何见解将不胜感激。

4

1 回答 1

1

您是否尝试为框架设置名称,然后引用目标中的名称?

<iframe name = "fbplugin" 
  src = "https://www.facebook.com/plugins/registration?
         client_id = MY_APP_ID&
         target = fbplugin&
         redirect_uri = MY_URI&
         fields = name, birthday, gender, email"
  scrolling = "auto"
  frameborder = "no"
  style = "border: none"
  allowTransparency = "true"
  width = "600"
  height = "280">
</iframe>

不确定这是否有效,但值得一试。

于 2012-10-03T14:48:13.400 回答