Skip to content
nov edited this page Jun 2, 2014 · 14 revisions

fb_graph2 Wiki

Debugging

If you have any errors when using fb_graph2, debug actual Graph API response.
By calling `FbGraph2.debug!` on top of your code, you’ll see actual HTTP request & response in your console.

FbGraph2.debug!

## NOTE: You can set your own logger too.
# FbGraph2.logger = Rails.logger

FbGraph::User.me(ACCESS_TOKEN).fetch
me.feed! message: 'Hello World'

Since Graph API response format sometimes changes without notice, fb_graph2 might causes errors because of the change.
If you find any such issues, open issue please. (Pull requests are GREAT!)

Basic Usage

Fetching an Object and its Edges

To use fb_graph2, you shouldn’t need to read its gem documents.
Instead, it follows Facebook Graph API interface in “rubyish” way.

So that once you read the official Facebook Graph API Documents, you should be able to know how to use fb_graph2 for your use-case.

For example, when fetching a User object, your code would be

user = FbGraph2::User.new('user_id').authenticate('access_token')
user.fetch

and the actual API call would be

GET /v2.0/user_id HTTP/1.1
Authorization: Bearer access_token
Host: graph.facebook.com

and `user.fetch` returns `FbGraph::User` instance which holds user attributes and edges described in the official document.
Each attributes and edges returns “reasonable” ruby object.

# User Attributes
user.name     # => String
user.email    # => String
user.cover    # => FbGraph2::Photo
user.hometown # => FbGraph2::Page

# User Edges
user.family  # => Array of FbGraph2::User
user.feed    # => Array of FbGraph2::Post
user.picture # => FbGraph2::Struct::Picture

You can also ask which edges are supported on the object.

user.edges # => Array of String

This is the basic usage of fb_graph2.
I hope you can “feel” how to use this gem.

More UseCases

Will add more code samples & use-cases as your request.

Request more gem documentation

Needs more help?

Open an Issue

Clone this wiki locally