簡體   English   中英

使用“已注冊”屬性呈現Facebook好友

[英]Render Facebook friends with 'registered' attribute

在我看來,我想做的是:

  • 獲取當前用戶的Facebook好友
  • 渲染此集合,同時通過向此集合的每個項目添加“已注冊”屬性設置為truefalse ,將已注冊我的應用的用戶與其他用戶區分開來

我已成功檢索當前用戶的Facebook好友並將其提供給我的應用程序

UserController的

  def facebook_friends
    @friends = graph.get_connections("me", "friends")
  end

Rabl的

object false
node :data do @friends
end

它返回如下內容:

{
  data: [{
    'id': '23456789'
    'name': 'Bobby Brown'
  }, {
    'id': '23456788'
    'name': 'Bobby Black'
  }]
}

但我想要的是這樣的:

{
  data: [{
    'id': '23456789'
    'name': 'Bobby Brown',
    'registered': true
  }, {
    'id': '23456788'
    'name': 'Bobby Black',
    'registered': false
  }]
}

但我不知道如何在不浪費太多資源的情況下完成第二部分。

有簡單的Graph API查詢。

me/friends?fields=id,name,installed

https://developers.facebook.com/tools/explorer/

它返回JSON。 安裝了應用程序的用戶installed: true

@graph.get_connections('me','friends',:fields=>"id,name,installed")

我假設你的意思是在你的應用程序注冊

您可以使用FQL來構建所需的響應,因為user表具有名為is_app_user的注冊字段

SELECT uid, name, is_app_user FROM user where uid in (SELECT uid2 FROM friend WHERE uid1 = me())

哪個應該返回類似的東西

{
  data: [{
    'id': '23456789'
    'name': 'Bobby Brown',
    'is_app_user': true
  }, {
    'id': '23456788'
    'name': 'Bobby Black',
    'is_app_user': false
  }]
}

如果您的用戶是經過Facebook驗證的用戶,我認為它僅適用於經過身份驗證的用戶。

該字段已經過verified

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM