SlideShare a Scribd company logo
Developing Facebook
    Application

       Wasu Khaodee
 Kanda Runapongsa Saikaew
   Computer Engineering
    Khon Kaen University
Facebook Application Types
 1. Run on web-browser
      1.1 A Website
      1.2 Canvas Application
    (Apps on Facebook.com)
 2. Run on a platform
      - Mobile Application
In this slide, we focus on developing Canvas Application
Focused Facebook APIs

1. Graph API
   The Graph API is the core of Facebook Platform, enabling
   you to read and write data to Facebook
   “nested query” is not supported by Graph API and in many
   cases, we need to get the data with multiple Graph API
   requests
2. FQL (Facebook Query Language)
   FQL is designed to condense Facebook queries and reduce
   response size
   Has similar syntax with SQL but there are somethings that
   cannot be done in FQL such as
      No Group by
What is Graph API?

 At Facebook's core is the social graph; people and the connections
 they have to everything they care about
 The Graph API presents a simple, consistent view of the Facebook
 social graph, uniformly representing objects in the graph (e.
 g., people, photos, events, and pages) and the connections
 between them (e.g., friend relationships, shared content, and photo
 tags)
 Every object in the social graph has a unique ID
  You can access the properties of an object by requesting https:
 //graph.facebook.com/ID
What is FQL?

 Facebook Query Language, or FQL, enables you to use a SQL-style
 interface to query the data exposed by the Graph API. It provides for
 some advanced features not available in the Graph API, including
 batching multiple queries into a single call
 You can execute FQL queries by fetching https://api.facebook.
 com/method/fql.query?query=QUERY. You can specify a response
 format as either XML or JSON with the format query parameter.
 Example
 SELECT name FROM user WHERE uid = me()
Facebook Software
Development Kit (SDK)
Here we are using PHP and Java Script

  - PHP SDK where source
     here : https://github.com/facebook/php-sdk/

  - Java Script where source
     here : http://connect.facebook.net/en_US/all.js
Application Permissions
Applications Permissions
 http://developers.facebook.
com/docs/authentication/permissions

Your App got only public data access without request
more permission.

Likes your app need to post some content
"publish_stream" need to be requested.
Creating Your Canvas App (1/4)

First goto : http://www.facebook.com/developers/




                                  here
Creating Your Canvas App (2/4)




            Your Apps Name here


                       And read the Terms
then create the app
Creating Your Canvas App (3/4)




                   Apps URL

        host URL
Creating Your Canvas App (4/4)


For Apps URL is where user access to your app.

Like http://apps.facebook.com/fbpublishpage

And host URL is where your Code is located.

Here we choose Canvas type as IFrame according to
Developer Roadmap
Create App Instance

get the SDK here : facebook.php

or download here : https://github.com/facebook/php-
sdk/archives/master
Get Session and Login

                      //Get App Session


                      //Get User Info to check the
                     login status


                                    //Get login URL (also
                                    grants permissions)




        //Just login if the user did not login
Using Graph API to See Feed




      Result for the code above
Using Graph API to Post Status




destination user id         identification of the author
                  to post                           the message


                 and this is the result
Using FQL to See Picture URL



  FQL command is like SQL such as SELECT, FROM,
  WHERE, IN or LIMIT

             and this is the result
Using Javascript with PHP to save ID of a
specified friend name


                    //Get current session



                    //Do some FQL call
Using JavaScript with PHP to post
message to a friend's wall



              //Send message with Graph API




                Current UI
Result from posting message to a
friend's wall
          result from the program
Reference
 http://developers.facebook.com/docs/
 http://www.slideshare.net/csaila/fql-overview
 http://www.takwing.idv.hk/
 Sample Code

More Related Content

What's hot (16)

ODP
Kt 15 07-2013
G Jayendra Kartheek
 
PPTX
Share point 2013 add-in (formerly app) development
Suhas R Satish
 
PDF
C# p1
Renas Rekany
 
PDF
Project LinkedList - LinkStack - A Social Media Reference Tool
SiddhantDixit6
 
PPTX
Naoki Hada iOS/Web/Mobile/Flash/RIA portfolio
hadanaoki
 
PPT
Developing Joomla Extensions JUG Bangladesh meetup dhaka-2012
Sabuj Kundu
 
DOCX
Some Useful Flash API
Tushar Vaghela
 
PDF
[API the Docs Paris 2018] Architecting DX
Kathleen De Roo
 
PDF
Design Patterns : The Ultimate Blueprint for Software
Edureka!
 
PPT
Firefox OS Apps
Hemant Devarapalli
 
PPT
Views
James Stone
 
PDF
Design patterns 1july
Edureka!
 
PPTX
Redmond o365 & SharePoint Saturday governance for power bi
Berkovich Consulting
 
DOCX
yogesh_resume
yogesh sharma
 
PDF
Implementing Web Services In Java
Edureka!
 
PPT
What's New on the Facebook Platform, March 2011
Iskandar Najmuddin
 
Kt 15 07-2013
G Jayendra Kartheek
 
Share point 2013 add-in (formerly app) development
Suhas R Satish
 
Project LinkedList - LinkStack - A Social Media Reference Tool
SiddhantDixit6
 
Naoki Hada iOS/Web/Mobile/Flash/RIA portfolio
hadanaoki
 
Developing Joomla Extensions JUG Bangladesh meetup dhaka-2012
Sabuj Kundu
 
Some Useful Flash API
Tushar Vaghela
 
[API the Docs Paris 2018] Architecting DX
Kathleen De Roo
 
Design Patterns : The Ultimate Blueprint for Software
Edureka!
 
Firefox OS Apps
Hemant Devarapalli
 
Design patterns 1july
Edureka!
 
Redmond o365 & SharePoint Saturday governance for power bi
Berkovich Consulting
 
yogesh_resume
yogesh sharma
 
Implementing Web Services In Java
Edureka!
 
What's New on the Facebook Platform, March 2011
Iskandar Najmuddin
 

Viewers also liked (19)

PPTX
Facebook API
David Nguyen
 
PPTX
Most Popular web application which build in php
SoftCrayons Tech Solutions
 
PDF
Certified Human Resource Professionals, May 2015
Peter Desilva
 
PDF
YAPC::EU::2016, How to make your web application work for everyone
jkva
 
PDF
Conversion Tracking Tutorial
Nick ONeill
 
PDF
Facebook privacy setting
Jia Wen
 
PPTX
Facebook Tutorial Video
Maggie Ansell
 
PPT
Tutorial on twitter in the lmc
micheleobrien
 
PPT
Facebook Timeline Tutorial by Leapdog
Leapdog Marketing Inc
 
PPTX
Creating facebook page tutorial 2014
Jaymar Villamor
 
PDF
Facebook Usage Stats
Neiman Outlen
 
PDF
After 55 facebook_tutorial
Tammy Fry, Ph.D.
 
PDF
Facebook Tutorial
Queens Library
 
PDF
Facebook tutorial
Alexis Wheat
 
PDF
Infographic: UK social media usage - Facebook
Harris Interactive UK
 
PDF
PilotLabs IBS - Facebook analysis rankings
Bjorn M
 
PPTX
Facebook Privacy Setting Tutorial
KARMUN1295
 
PDF
Facebook Privacy Settings Tutorial (2015)
cwjun94
 
PPTX
Facebook 101 personal usage
Kristi Kirkland
 
Facebook API
David Nguyen
 
Most Popular web application which build in php
SoftCrayons Tech Solutions
 
Certified Human Resource Professionals, May 2015
Peter Desilva
 
YAPC::EU::2016, How to make your web application work for everyone
jkva
 
Conversion Tracking Tutorial
Nick ONeill
 
Facebook privacy setting
Jia Wen
 
Facebook Tutorial Video
Maggie Ansell
 
Tutorial on twitter in the lmc
micheleobrien
 
Facebook Timeline Tutorial by Leapdog
Leapdog Marketing Inc
 
Creating facebook page tutorial 2014
Jaymar Villamor
 
Facebook Usage Stats
Neiman Outlen
 
After 55 facebook_tutorial
Tammy Fry, Ph.D.
 
Facebook Tutorial
Queens Library
 
Facebook tutorial
Alexis Wheat
 
Infographic: UK social media usage - Facebook
Harris Interactive UK
 
PilotLabs IBS - Facebook analysis rankings
Bjorn M
 
Facebook Privacy Setting Tutorial
KARMUN1295
 
Facebook Privacy Settings Tutorial (2015)
cwjun94
 
Facebook 101 personal usage
Kristi Kirkland
 
Ad

Similar to Developing Facebook Application (20)

PPT
Creating a Facebook App
Mindgrub Technologies
 
PPTX
Alphageeks meetup - facebook api
Alphageeks
 
PDF
Build social apps for Facebook
Mohammad Emran Hasan
 
PPTX
Facebook Developer Garage Cyberjaya
Mehedi Hasan Sumon
 
ODP
Facebook Platform
David Nattriss
 
PDF
Charlie Cheever Facebook Developer Garage Uganda
Leila Janah
 
PPT
Facebook plateform architecture presentation
Inam Soomro
 
PDF
Developing Facebook Application - Nagpur PHP Meetup
Abhishek Deshpande
 
KEY
Closet Swap - Social Fashion App on Facebook
benko
 
PDF
Facebook APIs
Andrew Sorensen
 
KEY
23 FACEBOOK APP DEVELOPMENT ESSENTIALS
NETNODE AG
 
KEY
페이스북 소셜 앱 개발 가이드 2011
Sukjoon Kim
 
PPTX
The Flash Facebook Cookbook - FlashMidlands
James Ford
 
PPTX
Introduction to facebook platform
Venkatesh Narayanan
 
PPT
Facebook Coin
Sathiyamoorthi
 
PPT
Facebook Platform - Tech
David Zhuang
 
PDF
funP 麻吉 開發者俱樂部十月份聚會
Nathan Chiu
 
PDF
Building Facebook Apps
David Keener
 
PDF
Leveraging Rails to Build Facebook Apps
David Keener
 
Creating a Facebook App
Mindgrub Technologies
 
Alphageeks meetup - facebook api
Alphageeks
 
Build social apps for Facebook
Mohammad Emran Hasan
 
Facebook Developer Garage Cyberjaya
Mehedi Hasan Sumon
 
Facebook Platform
David Nattriss
 
Charlie Cheever Facebook Developer Garage Uganda
Leila Janah
 
Facebook plateform architecture presentation
Inam Soomro
 
Developing Facebook Application - Nagpur PHP Meetup
Abhishek Deshpande
 
Closet Swap - Social Fashion App on Facebook
benko
 
Facebook APIs
Andrew Sorensen
 
23 FACEBOOK APP DEVELOPMENT ESSENTIALS
NETNODE AG
 
페이스북 소셜 앱 개발 가이드 2011
Sukjoon Kim
 
The Flash Facebook Cookbook - FlashMidlands
James Ford
 
Introduction to facebook platform
Venkatesh Narayanan
 
Facebook Coin
Sathiyamoorthi
 
Facebook Platform - Tech
David Zhuang
 
funP 麻吉 開發者俱樂部十月份聚會
Nathan Chiu
 
Building Facebook Apps
David Keener
 
Leveraging Rails to Build Facebook Apps
David Keener
 
Ad

More from Kanda Runapongsa Saikaew (20)

PDF
ความรู้ไอทีช่วยเลี้ยงลูกได้
Kanda Runapongsa Saikaew
 
PDF
Google Apps Basic for Education
Kanda Runapongsa Saikaew
 
PDF
Moodle basics
Kanda Runapongsa Saikaew
 
PDF
Thai socialmedia
Kanda Runapongsa Saikaew
 
PDF
Introduction to JSON
Kanda Runapongsa Saikaew
 
PDF
Introduction to Google App Engine
Kanda Runapongsa Saikaew
 
PDF
Android dev tips
Kanda Runapongsa Saikaew
 
PDF
Introduction to Google+
Kanda Runapongsa Saikaew
 
PDF
ใช้ไอทีอย่างไรให้เป็นประโยชน์ เหมาะสม และปลอดภัย
Kanda Runapongsa Saikaew
 
PDF
บริการไอทีของมหาวิทยาลัยขอนแก่นเพื่อนักศึกษา
Kanda Runapongsa Saikaew
 
PPT
Baby Health Journal
Kanda Runapongsa Saikaew
 
PDF
Using Facebook as a Supplementary Tool for Teaching and Learning
Kanda Runapongsa Saikaew
 
PDF
วิธีการติดตั้งและใช้ Dropbox
Kanda Runapongsa Saikaew
 
PDF
Using Facebook and Google Docs for Teaching and Sharing Information
Kanda Runapongsa Saikaew
 
PDF
เครื่องมือเทคโนโลยีสารสนเทศฟรีที่น่าใช้
Kanda Runapongsa Saikaew
 
PDF
การใช้เฟซบุ๊กเพื่อแลกเปลี่ยนเรียนรู้
Kanda Runapongsa Saikaew
 
PDF
คู่มือการใช้ Dropbox
Kanda Runapongsa Saikaew
 
PDF
การใช้เฟซบุ๊กเพื่อการเรียนการสอน
Kanda Runapongsa Saikaew
 
PDF
การใช้เฟซบุ๊กอย่างปลอดภัยและสร้างสรรค์
Kanda Runapongsa Saikaew
 
PDF
Social Media (โซเชียลมีเดีย)
Kanda Runapongsa Saikaew
 
ความรู้ไอทีช่วยเลี้ยงลูกได้
Kanda Runapongsa Saikaew
 
Google Apps Basic for Education
Kanda Runapongsa Saikaew
 
Thai socialmedia
Kanda Runapongsa Saikaew
 
Introduction to JSON
Kanda Runapongsa Saikaew
 
Introduction to Google App Engine
Kanda Runapongsa Saikaew
 
Android dev tips
Kanda Runapongsa Saikaew
 
Introduction to Google+
Kanda Runapongsa Saikaew
 
ใช้ไอทีอย่างไรให้เป็นประโยชน์ เหมาะสม และปลอดภัย
Kanda Runapongsa Saikaew
 
บริการไอทีของมหาวิทยาลัยขอนแก่นเพื่อนักศึกษา
Kanda Runapongsa Saikaew
 
Baby Health Journal
Kanda Runapongsa Saikaew
 
Using Facebook as a Supplementary Tool for Teaching and Learning
Kanda Runapongsa Saikaew
 
วิธีการติดตั้งและใช้ Dropbox
Kanda Runapongsa Saikaew
 
Using Facebook and Google Docs for Teaching and Sharing Information
Kanda Runapongsa Saikaew
 
เครื่องมือเทคโนโลยีสารสนเทศฟรีที่น่าใช้
Kanda Runapongsa Saikaew
 
การใช้เฟซบุ๊กเพื่อแลกเปลี่ยนเรียนรู้
Kanda Runapongsa Saikaew
 
คู่มือการใช้ Dropbox
Kanda Runapongsa Saikaew
 
การใช้เฟซบุ๊กเพื่อการเรียนการสอน
Kanda Runapongsa Saikaew
 
การใช้เฟซบุ๊กอย่างปลอดภัยและสร้างสรรค์
Kanda Runapongsa Saikaew
 
Social Media (โซเชียลมีเดีย)
Kanda Runapongsa Saikaew
 

Recently uploaded (20)

PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
DOCX
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PPTX
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
PDF
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Newgen Beyond Frankenstein_Build vs Buy_Digital_version.pdf
darshakparmar
 
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
Future Tech Innovations 2025 – A TechLists Insight
TechLists
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
Transcript: New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 

Developing Facebook Application

  • 1. Developing Facebook Application Wasu Khaodee Kanda Runapongsa Saikaew Computer Engineering Khon Kaen University
  • 2. Facebook Application Types 1. Run on web-browser 1.1 A Website 1.2 Canvas Application (Apps on Facebook.com) 2. Run on a platform - Mobile Application In this slide, we focus on developing Canvas Application
  • 3. Focused Facebook APIs 1. Graph API The Graph API is the core of Facebook Platform, enabling you to read and write data to Facebook “nested query” is not supported by Graph API and in many cases, we need to get the data with multiple Graph API requests 2. FQL (Facebook Query Language) FQL is designed to condense Facebook queries and reduce response size Has similar syntax with SQL but there are somethings that cannot be done in FQL such as No Group by
  • 4. What is Graph API? At Facebook's core is the social graph; people and the connections they have to everything they care about The Graph API presents a simple, consistent view of the Facebook social graph, uniformly representing objects in the graph (e. g., people, photos, events, and pages) and the connections between them (e.g., friend relationships, shared content, and photo tags) Every object in the social graph has a unique ID You can access the properties of an object by requesting https: //graph.facebook.com/ID
  • 5. What is FQL? Facebook Query Language, or FQL, enables you to use a SQL-style interface to query the data exposed by the Graph API. It provides for some advanced features not available in the Graph API, including batching multiple queries into a single call You can execute FQL queries by fetching https://api.facebook. com/method/fql.query?query=QUERY. You can specify a response format as either XML or JSON with the format query parameter. Example SELECT name FROM user WHERE uid = me()
  • 6. Facebook Software Development Kit (SDK) Here we are using PHP and Java Script - PHP SDK where source here : https://github.com/facebook/php-sdk/ - Java Script where source here : http://connect.facebook.net/en_US/all.js
  • 7. Application Permissions Applications Permissions http://developers.facebook. com/docs/authentication/permissions Your App got only public data access without request more permission. Likes your app need to post some content "publish_stream" need to be requested.
  • 8. Creating Your Canvas App (1/4) First goto : http://www.facebook.com/developers/ here
  • 9. Creating Your Canvas App (2/4) Your Apps Name here And read the Terms then create the app
  • 10. Creating Your Canvas App (3/4) Apps URL host URL
  • 11. Creating Your Canvas App (4/4) For Apps URL is where user access to your app. Like http://apps.facebook.com/fbpublishpage And host URL is where your Code is located. Here we choose Canvas type as IFrame according to Developer Roadmap
  • 12. Create App Instance get the SDK here : facebook.php or download here : https://github.com/facebook/php- sdk/archives/master
  • 13. Get Session and Login //Get App Session //Get User Info to check the login status //Get login URL (also grants permissions) //Just login if the user did not login
  • 14. Using Graph API to See Feed Result for the code above
  • 15. Using Graph API to Post Status destination user id identification of the author to post the message and this is the result
  • 16. Using FQL to See Picture URL FQL command is like SQL such as SELECT, FROM, WHERE, IN or LIMIT and this is the result
  • 17. Using Javascript with PHP to save ID of a specified friend name //Get current session //Do some FQL call
  • 18. Using JavaScript with PHP to post message to a friend's wall //Send message with Graph API Current UI
  • 19. Result from posting message to a friend's wall result from the program