【问题标题】:How to I use Facebook Graph API to show me events I'm a host of?如何使用 Facebook Graph API 向我展示我主持的活动?
【发布时间】:2013-12-08 02:31:19
【问题描述】:

我正在使用 Facebook oauth 和 koala gems 创建一个应用程序,以帮助即时进行事件管理。我已经成功地列出了关于我自己、我被邀请参加的活动以及我的朋友的简单信息。

我了解人员和事件对象具有兄弟关系,因此您无法找到彼此之间的信息,以了解您被邀请参加的事件。那么如何列出您主持的活动呢?

【问题讨论】:

  • 确保您有权限:user_events,然后尝试将事件读取为:@graph.get_connections("me", "events")

标签: ruby-on-rails ruby facebook koala


【解决方案1】:

这就是我的做法。在 self.from_omniauth 方法之后的 User.rb 中: :

def facebook
    @facebook ||= Koala::Facebook::API.new(oauth_token)    
    block_given? ? yield(@facebook) : @facebook
  rescue Koala::Facebook::APIError => e
    logger.info e.to_s
    nil
end

  def api_call
    query = "Me?fields=picture.type(large),location,events.fields(name,location,end_time,privacy,updated_time,description,rsvp_status,venue,start_time,id,ticket_uri,picture.type(large),cover,owner,admins.fields(picture.type(large),name,location),attending.fields(picture.type(large),name,rsvp_status,first_name,last_name,email,location),maybe.fields(rsvp_status,picture.type(large),name,first_name,last_name,email,age_range,location)),friends.fields(cover,id,gender,location,username,email,first_name,last_name,picture.type(large))"
  end

  def generate_user_events
    fb_call = facebook { |fb| fb.graph_call(api_call)}

    unless fb_call["events"].nil?
      events = fb_call["events"]["data"]
      events.each do |event|
        #All information from each event.
      end #/ each do |event|
    end #/ check to see if user has events
  end

end

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-02
    • 2011-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多