Facebook登录窗口出现并很快消失
Facebook login window appears and disappears very quickly
最近我上传了一段代码到phpfog,遇到了一个本地没有发生的问题:
当页面加载时,它试图获得应该设置的$idFacebook:
$idFacebook = $facebook->getUser();
if ($idFacebook) { ... }
我登录了Facebook,然而,条件失败,登录按钮出现:
<div class="fb-login-button" data-scope="user_likes,user_photos"></div>
另一个问题是,当我按下按钮时,登录窗口似乎会出现,但它会很快自动关闭。
我的代码与Heroku在创建Facebook应用程序时提供的代码基本相同。存储库是这样的:https://github.com/heroku/facebook-template-php.我找不到如何解决它,我看到很多人在登录facebook时遇到了一些问题。
我期待着你能帮助我。提前谢谢。
我的实际错误是$facebook->getUser()返回0,因为应用程序未通过身份验证,应用程序未经过身份验证,因为我将代码从一个主机移动到另一个域中的另一个主机,并且忘记在中更改应用程序配置http://developers.facebook.com.
现在,该应用程序会自动获得登录信息。谢谢大家!
登录窗口迅速消失是Facebook检查您是否需要授予应用程序权限。它几乎立即关闭,因为你已经登录并获得了Facebook的授权。
我不熟悉Heroku/Facebook集成,但我认为$idFacebook
问题与无效配置有关。
登录窗口很快就会消失,因为您可能在同一浏览器中登录到facebook。
我不熟悉Heroku,但我已经在Zend Framework-php中解决了这个问题。我使用javascript sdk进行登录和注销。您可以参考此链接。
http://developers.facebook.com/blog/post/2011/07/21/updated-javascript-sdk-and-oauth-2-0-roadmap/
所以当你们在代码中实现这个例子时,当你们在同一个浏览器中登录FB时,它会要求你们注销。所以当你点击注销时,它会再次要求你登录,就这样。
希望能有所帮助。
为了避免这种情况,你必须使用FB.getLoginStatus稍微改变你的facebook脚本的行为。它会检查用户是否已经登录facebook,以及他是否已经授权了你的应用程序。
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
window.location = //redirect to page with logged user (you have the response token in response)
} else {
//Show the login popup
FB.login(function(response) {
if (response.authResponse) {
window.location = //redirect to location after correct login
}
}, { scope: '<scopes>', state: '<state>' });
}
});
这样,如果用户"已连接"(已登录并获得应用程序授权),则不会调用FB.login方法,因此登录窗口不会闪烁。在任何其他情况下,它都会显示登录窗口,这是预期的结果。
检查https://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus以获取完整的文档。
- facebook”;添加评论“;popup获胜'不要消失
- 为什么js事件消失了
- JS文件的路径正在消失
- I'我设计了一个下拉菜单,onclick会出现,而on blur会消失
- Morris.js折线图x轴标签在调整大小后消失
- JavaScript下拉菜单-部件在Mac上消失
- 将display属性更改为visible flicks,然后再次消失
- TinyMCE实例在切换角度路由选项时会消失
- 将phonegap图像发布到php/mysql-图像字段从发布请求中消失
- Jquery UI对话框不会消失
- 通过单击同一图标使菜单出现和消失
- '单击'事件在Backbone中消失.使用流沙后查看
- Android上的引导弹出窗口在页面滚动后消失
- 如何使键盘在多页的Iphone窗体上消失
- 静态html中图像之间的空间在javascript中消失
- 工具提示在带有两个图表的d3.js中消失
- 用鼠标单击对象,使画布对象消失
- 当移动地址栏出现/消失时,防止更改窗口高度
- Facebook登录窗口出现并很快消失
- Javascript警报很快消失