2011-08-16 96 views
1

使用Facebook API,在添加到fanpage(标签应用)的自定义应用中,我如何获得fanpage ID?Facebook API - 如何使用Facebook API获取页面ID?

这里就是我想要实现:

  • 用户进入全宽度的画布应用程序,他授权自己那里,并让该应用选项卡添加到他的给药
  • 的fanpages之一
  • 每个Facebook用户去粉丝页面,看到标签和标签显示特定于该粉丝页面的内容(这就是为什么我需要知道粉丝页面ID)
  • 如果fanpage管理员想要改变某些内容,他会去全宽画布并登录到我的服务中(这里是我存储他想要在他的Fanpage中显示的内容)
+0

可能重复[如何找出页面安装了我的Facebook Canvas应用程序?](http://stackoverflow.com/questions/5587784/how-can-i-find-out-what-page -has-installed-my-facebook-canvas-app) – ifaour

+0

canvas应用程序与标签应用程序不同。例如,在标签应用程序中,我没有'signed_request'。 – pawlik

+1

我不是在谈论上述答案中的画布应用程序。这里有我的建议,1)仔细检查你的应用程序设置2)确保你没有做任何重定向,否则signed_request将会丢失! 3)检查这个[线程](http://forum.developers.facebook.net/viewtopic.php?id=91179) – ifaour

回答

3

从解析签名的请求(一个标签的iFrame),你可以得到的页面ID - 内容将类似于以下(PHP的print_r的输出):

stdClass Object 
(
    [algorithm] => HMAC-SHA256 
    [issued_at] => xxxxxxxxxx 
    [page] => stdClass Object 
     (
      [id] => FAN_PAGE_ID // target page id 
      [liked] => 1  // is the user a fan 
      [admin] =>   // is the user an admin 
     ) 

    [user] => stdClass Object 
     (
      [country] => ie 
      [locale] => en_GB 
      [age] => stdClass Object 
       (
        [min] => 21 
       ) 

     ) 

) 

欲了解更多信息,请参阅: http://developers.facebook.com/docs/authentication/signed_request/

+0

事情是在tab应用程序中的$ _REQUEST不包含'signed_request'(但在画布模式它确实)。我如何得到它? – pawlik

+2

'signed_request'参数仅在初始选项卡加载时传递。你确定在标签iFrame中没有发生重定向吗? – jBit

相关问题