The*_*can 15 javascript facebook
这个问题不是一个重复的这一个.
我不想知道用户是否已经授权我的应用程序,但是如果用户登录到facebook(完全独立于我的应用程序).
原因是我想在我的html代码中pring用户注释,以便搜索引擎可以索引它们.
当用户登录到Facebook时,我想用facebook评论片替换html代码.
如果没有,则应显示替代旧学校评论表.
我会从图表api中正确地提取评论,将它们放在我的数据库中,使用经典表单完成的评论应该通过api(不一定是用户,可能是管理员帐户......)发布,以便全部数据同步.
我查看了Javascript SDK Docs,也找到了函数getloginstatus,但是文档很糟糕而且没有定论.我知道在Facebook代码中通常还有一些功能,这些功能没有记录或在更高级别的apis中实现.
我的问题是:
我可以以某种方式找出用户是否登录到Facebook?
我可以以某种方式回调或发布评论的通知,因此我可以触发同步到我的数据库或者我是否必须定期"抓取"图形api?
Ben*_*pan 34
有一种非正式的,官方支持的方式为Facebook做这个(我认为最后一个版本的文档在这一点上更清晰).使用Javascript SDK,您可以:
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({appId: 'YOUR APP ID', status: true, cookie: true,
xfbml: true});
FB.getLoginStatus(function(o) {
if (!o && o.status) return;
if (o.status == 'connected') {
// USER IS LOGGED IN AND HAS AUTHORIZED APP
} else if (o.status == 'not_authorized') {
// USER IS LOGGED IN TO FACEBOOK (BUT HASN'T AUTHORIZED YOUR APP YET)
} else {
// USER NOT CURRENTLY LOGGED IN TO FACEBOOK
}
});
};
(function() {
var e = document.createElement('script'); e.async = true;
e.src = document.location.protocol +
'//connect.facebook.net/en_US/all.js';
document.getElementById('fb-root').appendChild(e);
}());
</script>
Run Code Online (Sandbox Code Playgroud)
抛开:如果XAuth已经流行起来,那么对于支持该标准的任何站点,都可以以更通用和受支持的方式执行此操作.
本文
https://grepular.com/Abusing_HTTP_Status_Codes_to_Expose_Private_Information
识别 Google 和 Facebook 中的安全风险,使您能够确定用户是否已登录。虽然没有官方 API 可以在没有用户明确允许您访问此信息的情况下检查用户是否已登录,但上面的文章展示了如何您可以“猜测”用户是否登录。
注意:本文指出了“黑客攻击”,因此如果 Google 和 Facebook 发现这些安全风险,则不保证将来有效。
| 归档时间: |
|
| 查看次数: |
24034 次 |
| 最近记录: |