我正在使用Facebook Oauth。我的申请是在iframe。以下是我最初的Oauth网址:
redirect_uri是https。
在IE8中,我收到以下错误页面:
[最初显示Go To Facebook.com链接] [1]
![然后显示以下错误页面] [2]
此内容无法在框架中显示
在Firefox中,它会显示空白页面。所以Facebook Oauth也没有在IE和Firefox中工作。我确实在你的网站上发现了一些帖子。但那些没有帮助我解决我的问题。
答案 0 :(得分:3)
根据https://developers.facebook.com/docs/reference/dialogs/:
iframe :供Facebook上的Canvas页面内的iframe内运行时使用。在灯箱样式的叠加层中显示对话框。由于存在点击劫持的风险,因此仅允许某些特定对话框,并要求您传递有效的access_token。 OAuth对话框不支持此模式。
即使您没有指定iframe
作为显示类型,您也会在iframe中加载对话框,并且facebook会检测到这一点以防止点击劫持。
解决此问题的一个好方法是打开一个处理身份验证的弹出窗口:
<script type="text/javascript">
window.open('https://www.facebook.com/dialog/oauth?display=popup&client_id=...');
</script>
或类似内容(在您的网站上打开执行重定向的网址等)。