SlideShare una empresa de Scribd logo
1 de 13
Facebook Apps Laurentiu Petrisor Chisan Pavel Cosmin Stefanache
Introduction   Architecture  Overview  Tutorial  Resources 2/13 Building an application on Facebook gives you the opportunity to deeply integrate into the core Facebook experience.  Your application can integrate with many aspects of Facebook.com, including  Requests ,  Bookmarks  and  Page tabs , making your application a seamless part of the Facebook experience.  All of the core Facebook Platform technologies, such as  Social Plugins , the  Graph API  and  Platform Dialogs  are available to Apps on Facebook.com.
Introduction  Architecture  Overview  Tutorial  Resources 3/13 How a Facebook App works Anyone can create an application (or app) that will run within the Facebook platform (and many do!). An app is like a regular website with the aditional benifits of the social network Facebook provides (such as  friends ,  profiles   boxes ,  walls  etc). Technically, a Facebook app is just like a website: its mounted on a normal web sever and serves content to HTTP requests.  The difference is that while a normal website receives requests directly from its users, an app has the Facebook platform as a middle man, between the user and the application.
4/13 A Facebook application architecture vs. a normal web sever . Introduction  Architecture  Overview  Tutorial  Resources
5/13 What Facebook tells the application about the user When the user engages the application, Facebook will add some of the user's personal information when contacting the app server, so the response, could be personalized. What details exactlly it sends along depends on many variables, most notabely if the user has authorized the app. However, Facebook has a module called  Automatic Authentication .  This mechanism allows the app to receive some of the user's info automatically, without the user's consent. These details include  full name ,  profile picture , and  friends list . Introduction  Architecture  Overview  Tutorial  Resources
6/13 Getting Started  Apps on Facebook.com are web applications that are loaded in the context of Facebook. You can build your application using any language or tool chain that supports web programming, such as  PHP ,  Python ,  Java  or  C#. Apps on Facebook.com are loaded into a  Canvas Page . When a user requests the Canvas Page, the  Canvas URL  is loaded within an iframe on that page. This results in your application being displayed within the standard Facebook chrome. Introduction  Architecture  Overview  Tutorial  Resources
7/13 Authentication & Authorization In order to create a personalized user experience, Facebook sends your application information about the user. This information is passed to your Canvas URL using HTTP POST within a single   signed_request  parameter which contains a  base64url  encoded JSON object. When a user first accesses your app, the  signed_request  parameter contains a limited amount of user data. In order to gain access to all the user information available to your application by default (like the user's Facebook ID), the user must  authorize  your application. Facebook offers a number of different ways to handle authorization ranging from the  Login Button  to manually performing the  OAuth2.0   flow  on your Web server. Introduction  Architecture  Overview  Tutorial  Resources
8/13 Authentication & Authorization After the user has authorized your application, the  signed_request  parameter will contain the following information on subsequent requests: Introduction  Architecture  Overview  Tutorial  Resources
9/13 Requests  Requests are a great way to enable users to invite their friends to your application. Requests integrate with Facebook notifications and dashboards, ensuring that a user will see the requests from their friends whenever they are on Facebook.  You can also use requests to have a user notify their friends to take a specific action in your app, such as accepting a gift or helping the user complete a quest. Introduction  Architecture  Overview  Tutorial  Resources
10/13 Bookmarks and Counters Bookmarks enable users to easily navigate back to your application from within Facebook. Bookmarks are automatically added for your application when user uses it repeatedly. The bookmark will appear on left column of the homepage as well as on the top right of a Canvas Page. Introduction  Architecture  Overview  Tutorial  Resources
11/13 Page Tabs  Facebook Pages  are a heavily used feature of Facebook. Major brands, celebrities, etc. use Facebook Pages as their "social home" on the web. One of the most interesting features of Apps on Facebook.com is the ability for your application to be used within the context of a Facebook Page. Introduction  Architecture  Overview  Tutorial  Resources
12/13 How to make a Facebook Application There are a lot of examples on the web in how to make a Facebook Application.  Some of them are included below: http://www.youtube.com/watch?v=gtIUiTXx9Ik&feature=related http://www.youtube.com/watch?v=roOYZKsN3Yg&feature=player_embedded Introduction  Architecture  Overview  Tutorial  Resources
13/13 Introduction  Architecture  Overview  Tutorial  Resources  This presentation is the mash-up of the ideas presented in the documents included below:  http://blog.quaji.com/2009/08/facebook-csrf-attack-full-disclosure.html http://developers.facebook.com/docs/guides/canvas http://www.labnol.org/internet/tutorial-write-a-facebook-application/10116/

Más contenido relacionado

La actualidad más candente

Php day 2011 - Interactive-with-facebook
Php day 2011 - Interactive-with-facebookPhp day 2011 - Interactive-with-facebook
Php day 2011 - Interactive-with-facebook
Quang Anh Le
 
Jasmeet Grp Facebook It Group Assig
Jasmeet Grp Facebook It Group AssigJasmeet Grp Facebook It Group Assig
Jasmeet Grp Facebook It Group Assig
sharing notes123
 
Introduction to Facebook Application development
Introduction to Facebook Application developmentIntroduction to Facebook Application development
Introduction to Facebook Application development
Vasanth Kumar
 
Social Apps with the Force.com Toolkit for Facebook
Social Apps with the Force.com Toolkit for FacebookSocial Apps with the Force.com Toolkit for Facebook
Social Apps with the Force.com Toolkit for Facebook
Salesforce Developers
 
Web site advisory panel meeting 1
Web site advisory panel   meeting 1Web site advisory panel   meeting 1
Web site advisory panel meeting 1
Rob Tidrow
 

La actualidad más candente (18)

Interactive with-facebook
Interactive with-facebookInteractive with-facebook
Interactive with-facebook
 
Online tools for content development
Online tools for content developmentOnline tools for content development
Online tools for content development
 
Php day 2011 - Interactive-with-facebook
Php day 2011 - Interactive-with-facebookPhp day 2011 - Interactive-with-facebook
Php day 2011 - Interactive-with-facebook
 
[Code Camp] Ứng dụng Facebook API vào phát triển website
[Code Camp] Ứng dụng Facebook API vào phát triển website[Code Camp] Ứng dụng Facebook API vào phát triển website
[Code Camp] Ứng dụng Facebook API vào phát triển website
 
Facebook Apps
Facebook AppsFacebook Apps
Facebook Apps
 
Creating a content managed facebook app
Creating a content managed facebook appCreating a content managed facebook app
Creating a content managed facebook app
 
Connect with Facebook to Rails Application By Nyros Developer
Connect with Facebook to Rails Application By Nyros DeveloperConnect with Facebook to Rails Application By Nyros Developer
Connect with Facebook to Rails Application By Nyros Developer
 
Jasmeet Grp Facebook It Group Assig
Jasmeet Grp Facebook It Group AssigJasmeet Grp Facebook It Group Assig
Jasmeet Grp Facebook It Group Assig
 
Uwex facebook
Uwex facebookUwex facebook
Uwex facebook
 
Introduction to Facebook Application development
Introduction to Facebook Application developmentIntroduction to Facebook Application development
Introduction to Facebook Application development
 
What's New on the Facebook Platform, July 2011
What's New on the Facebook Platform, July 2011What's New on the Facebook Platform, July 2011
What's New on the Facebook Platform, July 2011
 
Social software & web 2.0
Social software & web 2.0Social software & web 2.0
Social software & web 2.0
 
Social Apps with the Force.com Toolkit for Facebook
Social Apps with the Force.com Toolkit for FacebookSocial Apps with the Force.com Toolkit for Facebook
Social Apps with the Force.com Toolkit for Facebook
 
Web site advisory panel meeting 1
Web site advisory panel   meeting 1Web site advisory panel   meeting 1
Web site advisory panel meeting 1
 
Facebook App Development
Facebook App DevelopmentFacebook App Development
Facebook App Development
 
Developing Facebook Application
Developing Facebook ApplicationDeveloping Facebook Application
Developing Facebook Application
 
Multimedia System & Design!
Multimedia System & Design!Multimedia System & Design!
Multimedia System & Design!
 
Facebook
FacebookFacebook
Facebook
 

Similar a Facebook apps

Facebook API
Facebook APIFacebook API
Facebook API
snipermkd
 
Facebook Open Graph Tech Requirements
Facebook Open Graph Tech RequirementsFacebook Open Graph Tech Requirements
Facebook Open Graph Tech Requirements
Affinitive
 
Peepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebookPeepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebook
sushilprajapati
 

Similar a Facebook apps (20)

Facebook 3rd Party Api
Facebook 3rd Party ApiFacebook 3rd Party Api
Facebook 3rd Party Api
 
Facebook API
Facebook APIFacebook API
Facebook API
 
Developing a Facebook App
Developing a Facebook AppDeveloping a Facebook App
Developing a Facebook App
 
Facebook Open Graph Tech Requirements
Facebook Open Graph Tech RequirementsFacebook Open Graph Tech Requirements
Facebook Open Graph Tech Requirements
 
Facebook app
Facebook appFacebook app
Facebook app
 
Peepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebookPeepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebook
 
Assignmet on facebook
Assignmet on facebookAssignmet on facebook
Assignmet on facebook
 
FacebookAPIWhitePaper
FacebookAPIWhitePaperFacebookAPIWhitePaper
FacebookAPIWhitePaper
 
FacebookAPIWhitePaper
FacebookAPIWhitePaperFacebookAPIWhitePaper
FacebookAPIWhitePaper
 
Facebook Coin
Facebook CoinFacebook Coin
Facebook Coin
 
Facebook Developer Garage Cyberjaya
Facebook Developer Garage CyberjayaFacebook Developer Garage Cyberjaya
Facebook Developer Garage Cyberjaya
 
Facebook Apps Vs Google Open Social
Facebook Apps Vs Google Open SocialFacebook Apps Vs Google Open Social
Facebook Apps Vs Google Open Social
 
Facebook Platform
Facebook PlatformFacebook Platform
Facebook Platform
 
Creating a Facebook App
Creating a Facebook AppCreating a Facebook App
Creating a Facebook App
 
Facebook Connect
Facebook ConnectFacebook Connect
Facebook Connect
 
Introducing Facebook
Introducing FacebookIntroducing Facebook
Introducing Facebook
 
Web 2.o as facebook
Web 2.o as facebookWeb 2.o as facebook
Web 2.o as facebook
 
Facebook Connect Integration
Facebook Connect IntegrationFacebook Connect Integration
Facebook Connect Integration
 
Shiny Agency's Facebook Development Guidelines
Shiny Agency's Facebook Development GuidelinesShiny Agency's Facebook Development Guidelines
Shiny Agency's Facebook Development Guidelines
 
Barcamp AK4 Building facebook applications
Barcamp AK4 Building facebook applicationsBarcamp AK4 Building facebook applications
Barcamp AK4 Building facebook applications
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Último (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

Facebook apps

  • 1. Facebook Apps Laurentiu Petrisor Chisan Pavel Cosmin Stefanache
  • 2. Introduction Architecture Overview Tutorial Resources 2/13 Building an application on Facebook gives you the opportunity to deeply integrate into the core Facebook experience. Your application can integrate with many aspects of Facebook.com, including Requests , Bookmarks and Page tabs , making your application a seamless part of the Facebook experience. All of the core Facebook Platform technologies, such as Social Plugins , the Graph API and Platform Dialogs are available to Apps on Facebook.com.
  • 3. Introduction Architecture Overview Tutorial Resources 3/13 How a Facebook App works Anyone can create an application (or app) that will run within the Facebook platform (and many do!). An app is like a regular website with the aditional benifits of the social network Facebook provides (such as friends , profiles boxes , walls etc). Technically, a Facebook app is just like a website: its mounted on a normal web sever and serves content to HTTP requests. The difference is that while a normal website receives requests directly from its users, an app has the Facebook platform as a middle man, between the user and the application.
  • 4. 4/13 A Facebook application architecture vs. a normal web sever . Introduction Architecture Overview Tutorial Resources
  • 5. 5/13 What Facebook tells the application about the user When the user engages the application, Facebook will add some of the user's personal information when contacting the app server, so the response, could be personalized. What details exactlly it sends along depends on many variables, most notabely if the user has authorized the app. However, Facebook has a module called Automatic Authentication . This mechanism allows the app to receive some of the user's info automatically, without the user's consent. These details include full name , profile picture , and friends list . Introduction Architecture Overview Tutorial Resources
  • 6. 6/13 Getting Started Apps on Facebook.com are web applications that are loaded in the context of Facebook. You can build your application using any language or tool chain that supports web programming, such as PHP , Python , Java or C#. Apps on Facebook.com are loaded into a Canvas Page . When a user requests the Canvas Page, the Canvas URL is loaded within an iframe on that page. This results in your application being displayed within the standard Facebook chrome. Introduction Architecture Overview Tutorial Resources
  • 7. 7/13 Authentication & Authorization In order to create a personalized user experience, Facebook sends your application information about the user. This information is passed to your Canvas URL using HTTP POST within a single signed_request parameter which contains a base64url encoded JSON object. When a user first accesses your app, the signed_request parameter contains a limited amount of user data. In order to gain access to all the user information available to your application by default (like the user's Facebook ID), the user must authorize your application. Facebook offers a number of different ways to handle authorization ranging from the Login Button to manually performing the OAuth2.0 flow on your Web server. Introduction Architecture Overview Tutorial Resources
  • 8. 8/13 Authentication & Authorization After the user has authorized your application, the signed_request parameter will contain the following information on subsequent requests: Introduction Architecture Overview Tutorial Resources
  • 9. 9/13 Requests Requests are a great way to enable users to invite their friends to your application. Requests integrate with Facebook notifications and dashboards, ensuring that a user will see the requests from their friends whenever they are on Facebook. You can also use requests to have a user notify their friends to take a specific action in your app, such as accepting a gift or helping the user complete a quest. Introduction Architecture Overview Tutorial Resources
  • 10. 10/13 Bookmarks and Counters Bookmarks enable users to easily navigate back to your application from within Facebook. Bookmarks are automatically added for your application when user uses it repeatedly. The bookmark will appear on left column of the homepage as well as on the top right of a Canvas Page. Introduction Architecture Overview Tutorial Resources
  • 11. 11/13 Page Tabs Facebook Pages are a heavily used feature of Facebook. Major brands, celebrities, etc. use Facebook Pages as their "social home" on the web. One of the most interesting features of Apps on Facebook.com is the ability for your application to be used within the context of a Facebook Page. Introduction Architecture Overview Tutorial Resources
  • 12. 12/13 How to make a Facebook Application There are a lot of examples on the web in how to make a Facebook Application. Some of them are included below: http://www.youtube.com/watch?v=gtIUiTXx9Ik&feature=related http://www.youtube.com/watch?v=roOYZKsN3Yg&feature=player_embedded Introduction Architecture Overview Tutorial Resources
  • 13. 13/13 Introduction Architecture Overview Tutorial Resources This presentation is the mash-up of the ideas presented in the documents included below: http://blog.quaji.com/2009/08/facebook-csrf-attack-full-disclosure.html http://developers.facebook.com/docs/guides/canvas http://www.labnol.org/internet/tutorial-write-a-facebook-application/10116/