【问题标题】:Check if the user is connected to facebook and then check if he liked a page检查用户是否连接到 facebook,然后检查他是否喜欢某个页面
【发布时间】:2011-09-22 18:45:30
【问题描述】:

是否有任何方法可以检查用户是否在我的外部页面上连接到 facebook 而无需他们允许我的应用程序之一? 同样的问题也适用于“检查用户是否喜欢某个页面”。

我检查了大约 20 个问题和 3-4 个教程,似乎所有这些都在谈论内部脚本(粉丝页面/应用画布页面内的选项卡),而我的问题仅针对外部页面。

如果可以的话,请在这里喊一个代码示例(PHP+JavaScript)。谢谢!

【问题讨论】:

    标签: php javascript facebook


    【解决方案1】:

    我如何知道用户何时点击了“赞”按钮?

    如果您使用的是XFBML版本的按钮,您可以通过FB.Event.subscribe.订阅'edge.create'事件

    检查用户是否登录facebook:

    Check if user is logged in New Facebook API

    【讨论】:

    • 哦,所以基本上如果用户已经喜欢该页面,则不会显示喜欢按钮?
    • 你可以订阅你的回调函数,当用户点击like按钮后,回调函数会被调用。
    【解决方案2】:

    不,这在外部页面是不可能的。当他们喜欢一个页面时,您可以使用 javascript 并订阅该事件,但如果他们已经喜欢您的页面,您将不知道时间。他们需要对您的应用程序进行身份验证,然后您可以执行 FQL 查询进行验证。

    【讨论】:

    • 谢谢哥们,所以“他们是否登录到 facebook”也是如此?基本上,如果他们已连接,我想显示一个喜欢的按钮,如果他们没有,我想放置一个电子邮件自动回复表单。
    【解决方案3】:

    您可以使用 javascript sdk 检查是否有 facebook 会话:

    <script type="text/javascript" src="http://connect.facebook.net/es_ES/all.js"></script>
    <script type="text/javascript">
       FB.init({
             appId  : 'your app id',
             status : true, // check login status
             cookie : true, // enable cookies 
             xfbml  : true  // parse XFBML
        });     
        FB.getLoginStatus(function(response) {
              console.log(response) // See other useful information on JavaScript console.
              console.log(response.status) // Show if the user is connected with facebook or not
              if (response.session) {
                  // session found do something
              } else {
                  // no user session available
              }
         });
    </script>
    

    希望它会有所帮助。

    【讨论】:

    • +1 console.log(response) 帮助我找出了其他问题。
    猜你喜欢
    • 1970-01-01
    • 2011-12-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-14
    • 2011-11-15
    • 2016-05-31
    相关资源
    最近更新 更多