我有facebook iFrame应用程序正在公司页面显示。在同一个iframe应用程序,我有邀请按钮,我们打开FB。UI发送方法打开邀请对话框。
由于某些原因,自上周以来,我的发送窗口没有被关闭。我使用fiddler来查看正在发生的事情,并注意到下面的URL不断循环。这只发生在IE中,在所有其他浏览器中都可以正常工作。
https://s-static.ak.fbcdn.net/connect/xd_proxy.php?version=3 cb = f352b316971395&起源3 = http % % 2 f % 2 fqa.xxxx.local % 2 ff281b26d528cc6&关系= opener&运输= flash
下面是我的代码:<div id="fb-root"> </div>
<script type="text/javascript" src="http://connect.facebook.net/en_GB/all.js"></script>
<div class="footer">
<br />
<script type="text/javascript">
FB.init({
appId: '<%=lAppId %>',
status: true, // check login status
cookie: true, // enable cookies to allow the server to access the session
xfbml: true // parse XFBML
});
</script>
</div>
我调用以下javascript在点击邀请按钮:
function invite() {
var lLinkToPublish=GeAppUrl();
var lTextToPublish=GetPublishText();
var lTitleText=GetInvitationTitle();
FB.ui({
method: 'send',
name: lTitleText,
display: 'popup',
description: lTextToPublish,
link: lLinkToPublish ,
});
}
我已经尝试了解决方案,例如没有运气Facebook php应用程序在IE中不断循环,是否有服务器端修复?
我自己想出来的,贴在这里,希望能帮助其他遇到类似问题的人。
的原因是:
1)发送弹出窗口总是用HTTPS打开,我使用http://connect.facebook.net/en_GB/all.js连接API,我不得不将HTTP替换为HTTPS
2)我使用服务器控件调用FB。用户界面的方法。我必须用普通的html输入控件来代替它。
希望对你有帮助。
伊姆兰