introduction to facebook javascript sdk

31
f Introduction to Facebook JS API API Introduction to Facebook Javascript API Social Network and Applications, 2011 LittleQ, The department of Computer Science, NCCU

Upload: colin-su

Post on 17-May-2015

6.918 views

Category:

Technology


4 download

DESCRIPTION

TA Session, Facebook JS SDK introduction National Chengchi University, The department of Computer Science Social Network and Applications

TRANSCRIPT

Page 1: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

APIIntroduction to Facebook Javascript APISocial Network and Applications, 2011LittleQ, The department of Computer Science, NCCU

Page 2: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Objectives

• Learn the concepts of Facebook API

• Learn how to use Facebook API with Javascript

Page 3: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Core Topics

• Facebook Developers website

• Graph API

• Facebook Javascript SDK

• Resources

Page 4: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Facebook Developers

• Provide you online documentations

• Forum for discussion

• Management of your applications

Page 5: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Where is it?

Page 6: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Social Plugins

• Like Button, Send Button, Login Button

• Comments

• Registration

• Activity Feed, Live Stream

Page 7: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Graph API

• Facebook’s core

• Social graph

• Connections

Application Graph API Facebook Database

Access Token Request Data

Aggregate InformationResponse Data

Page 8: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Graph Model

• Composed of objects and connections

• Identify entities and relationships by id

• Data will be stored with smallest spaces and keep being updated

Page 9: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Object Modelinformation from graph API

without access token

Page 10: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Graph Modelinformation from graph API

with access token

Page 11: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Connection Model

• All of the object in the Facebook social graph are connected to each other via connections

• Objects are just like entities while connections are like relationship

• For example, users, pages and groups are objects and likes, friends and feeds are connections

Page 12: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Connection Model

Page 13: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Access to Graph

• HTTP(S) Graph API

• SDKs‣ Javascript SDK

‣ iOS SDK

‣ Android SDK

‣ PHP SDK

‣ Python SDK

Page 14: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

HTTP(S) Graph API

• RESTful HTTP request & response

• Response data-type: JSON

• Access URL: graph.facebook.com

Page 15: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

HTTP(S) Graph API

• Request information of an object with id or username

• id-or-username can be “me” with the access token

http://graph.facebook.com/<id-­‐or-­‐username>

Page 16: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

HTTP(S) Graph API

{      "id":  "1681390745",      "name":  "\u8607\u82d1\u9716",  //翻譯:蘇苑霖      "first_name":  "\u82d1\u9716",  //翻譯:苑霖      "last_name":  "\u8607",  //翻譯:蘇      "link":  "https://www.facebook.com/littleq0903",      "username":  "littleq0903",      "gender":  "male",      "locale":  "en_US"}

http://graph.facebook.com/littleq0903

Result:

Page 17: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

HTTP(S) Graph API

• Access token should be transferred as a HTTP GET variable

• More information: developers.facebook.com/docs/reference/api/

http://graph.facebook.com/littleq0903?access_token=...

Page 18: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Access Token

• A long string to denote the authentication of users, which request facebook information with your application

• The information behind the access token

‣ user id

‣ app id

‣ expired time

‣ secret

Page 19: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Javascript SDK

• Let you access all features of the Graph API or dialogs via Javascript

• Authentication

• Rendering the XFBML versions of Social Plugins

• Most functions in the FB Javascript SDK require an app id

Page 21: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Initialization

• Do this after the “fb-root” div element has been built

FB.init({        appId    :  'YOUR  APP  ID',        status  :  true,  //  check  login  status        cookie  :  true,  //  enable  cookies        xfbml    :  true    //  parse  XFBML    });

Page 22: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Components

• Core Methods

• Event Handling

• XFBML Methods

• Data Access Utilities

• Canvas Methods

Page 23: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Core Methods

• FB.api(): Access the Graph API

• FB.getLoginStatus()

• FB.getSession()

• FB.init(): Method of initialization

• FB.login(): Login method

• FB.logout(): Logout method

• FB.ui(): Method to call dialogs

Page 24: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

FB.api()

• make a API call to the Graph API

• depending on the connect status and the permissions

function  SuccessCall(res){alert(res.name);

}

FB.api('/me',  SuccessCall);

Call if success.

Page 25: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

FB.ui()

• Triggering iframe dialogs or popups with Facebook

FB.ui(      {          method:  'feed',          name:  'Facebook  Dialogs',          link:  'https://developers.facebook.com/docs/reference/dialogs/',          picture:  'http://fbrell.com/f8.jpg',          caption:  'Reference  Documentation',          description:  'Dialogs  provide  a  simple,  consistent  interface  for  applications  to  interface  with  users.',          message:  'Facebook  Dialogs  are  easy!'      }  );

Page 26: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

More Topics

• Event Handling

• XFBML

• FQL

• Other SDKs for Facebook Graph API

Page 27: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Tools

• Javascript Console

• Debug version of Facebook JS SDK

• Test users

• URL Linter

Page 28: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Examples

• js_ex1.html - Social Plugins

• js_ex2.html - FB.api()

• js_ex3.html - FB.api()

• js_ex4.html - FB.ui() & Dialogs

• Download URL: http://goo.gl/3YnnK

Page 29: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Temporary HTTP Server

• python  -­‐m  SimpleHTTPServer

• http://127.0.0.1:8000/

• Facebook app allow only one domain access at a time

Page 30: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Resources[1] Facebook Developers

[2] jQuery - http://jquery.com

[3] Javascript tutorial - http://www.study-area.org/

coobila/category_Javascript_u6559_u5B78.html

[4] Google - http://www.google.com

Page 31: Introduction to Facebook Javascript SDK

f Introduction toFacebook JS API

Q&A TimeThanks for your listening