Development of Internet Application Web API Ing. Jan Janoušek 9.

Slides:



Advertisements
Similar presentations
Introduction to Web Services
Advertisements

Using Evernote and Google Docs in your web or mobile application (and potentially Dropbox and Skydrive) By Peter Messenger Senior Developer – Triple Point.
Web Services Nasrullah. Motivation about web service There are number of programms over the internet that need to communicate with other programms over.
The World Wide Web and the Internet Dr Jim Briggs 1WUCM1.
2/9/2004 Web and HTTP February 9, /9/2004 Assignments Due – Reading and Warmup Work on Message of the Day.
CS 415 N-Tier Application Development By Umair Ashraf July 6,2013 National University of Computer and Emerging Sciences Lecture # 9 Introduction to Web.
TP2653 Adv Web Programming SOAP and WSDL. SOAP Simple Object Access Protocol – Lightweight XML-based messaging protocol – A protocol for accessing a Web.
CAEL 5012 Rich Internet Applications. What you need For this part of the course you will need access to a server with PHP and MYSQL which will be supplied.
Enterprise Application Integration – Web Collaboration and Standardisation Enterprise Application Integration – Web Collaboration and Standardisation.
Social Media Apps Programming Min-Yuh Day, Ph.D. Assistant Professor Department of Information Management Tamkang University
C Copyright © 2009, Oracle. All rights reserved. Appendix C: Service-Oriented Architectures.
Google Maps API. Static Maps send an HTTP GET request receive an image (PNG, GIF, JPEG) no javascript needed encode params in URL example:
REST vs SOAP for Web Services Applications and Services in Internet Benjamin Hilaire – 81747L
James Holladay, Mario Sweeney, Vu Tran. Web Services Presentation Web Services Theory James Holladay Tools – Visual Studio Vu Tran Tools – Net Beans Mario.
Web Services XML-RPC, SOAP, REST Advanced Web-based Systems | Misbhauddin.
CSC8530 Distributed Systems XML Web Services David Vaglia.
Social Media Apps Programming Min-Yuh Day, Ph.D. Assistant Professor Department of Information Management Tamkang University
.Net and Web Services Security CS795. Web Services A web application Does not have a user interface (as a traditional web application); instead, it exposes.
1 Web Services Web and Database Management System.
Web Services (SOAP) part 1 Eriq Muhammad Adams J |
Facebook API Kelly Orser. Client Libraries Client libraries will simplify the calls to the platform by reducing the amount of code you have to write.
API Crash Course CWU Startup Club. OUTLINE What is an API? Why are API’s useful? What is HTTP? JSON? XML? What is a RESTful API? How do we consume an.
1 Alternative view on Internet Computing Web 1.0 –Web 1.0 is first generation, Web Information based. Driven by Information provider. Web 2.0 Ajax enabled.
Introduction to Web Services. SOAP SOAP originally stood for "Simple Object Access Protocol". Web Services expose useful functionality to Web users through.
Advanced Web Technologies Lecture #4 By: Faraz Ahmed.
Introduction to Web Services
Social Media Apps Programming Min-Yuh Day, Ph.D. Assistant Professor Department of Information Management Tamkang University
Web Technologies Lecture 10 Web services. From W3C – A software system designed to support interoperable machine-to-machine interaction over a network.
Introduction to Web Services Presented by Sarath Chandra Dorbala.
Lab #3: Programming Exercises for Social Web APIs By J. H. Wang Dec. 26, 2011.
COMP2322 Lab 2 HTTP Steven Lee Jan. 29, HTTP Hypertext Transfer Protocol Web’s application layer protocol Client/server model – Client (browser):
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
REST API Design. Application API API = Application Programming Interface APIs expose functionality of an application or service that exists independently.
Jackson, Web Technologies: A Computer Science Perspective, © 2007 Prentice-Hall, Inc. All rights reserved Chapter 9 Web Services: JAX-RPC,
(Part 2). From Part 1 We …  Signed up to be facebook developers Verified our facebook account. Added facebook developer app.  Setup a Heroku facebook.
Lesson 11: Web Services and API's
Java Web Services Orca Knowledge Center – Web Service key concepts.
Platform as a Service (PaaS)
Introduction to Web Services
The Object-Oriented Thought Process Chapter 13
Platform as a Service (PaaS)
API (Application Program Interface)
RESTful Sevices Distributed Objects Presented by: Shivank Malik
Sabri Kızanlık Ural Emekçi
Understanding SOAP and REST calls The types of web service requests
WEB SERVICES.
Cosc 5/4730 REST services.
COMP2322 Lab 2 HTTP Steven Lee Feb. 8, 2017.
Unit – 5 JAVA Web Services
GF and RS, Dept. of CS, Mangalore University
Tracking and Booking Taxi
What is REST API ? A REST (Representational State Transfer) Server simply provides access to resources and the REST client accesses and presents the.
Lesson 11: Web Services & API's
Web Services CO5027.
Social Networks Integration in Android
PHP / MySQL Introduction
Web App vs Mobile App.
Connor Griesemer & Kevin Wu
12.3 Communication Siddharth Shekhar.
WEB API.
Chapter 9 Web Services: JAX-RPC, WSDL, XML Schema, and SOAP
$, $$, $$$ API testing Edition
Lesson 11: Web Services and API's
Middleware, Services, etc.
RESTful Web Services.
Week 05 Node.js Week 05
WCF Data Services and Silverlight
NEECOM – May 22, 2019 Todd L Gould, CEO
Chengyu Sun California State University, Los Angeles
Web Application Development Using PHP
Presentation transcript:

Development of Internet Application Web API Ing. Jan Janoušek 9

API -Application Programming Interface -Define a way of ineraction between: -Software components Interface -Software and hardware OpenGL DirectX OpenCL -Whole systems or their parts Windows API Linux Kernel API SOAP REST

Why API? -Independence. -Scalability. -Providing services to third parties. -I know what I want and I don't care how I reach it (blackbox).

Web services -Web services are subset of API. -Software instrument for communication between devices using network. -The most commonly through HTTP protocol. -XML vs. JSON -Independent on platform. -Independent on programing languages. -Security -Authentication vs. authorization -Signed request -HTTP vs. HTTPS

REST - Representational State Transfer -Today the most widely used type of web API. -Stateless communication based on HTTP protocol. -REST API is collection of resources, on which it is possible to perform operations. -Every source is uniquely identified by its URL. -HTTP methods GET, POST, PUT and DELETE. -Answers of a server are commonly XML, or JSON. -Scalability and caching. GET GET DELETE GET GET DELETE

SOAP - Simple Object Access Protocol -It's not usually used in combination with JavaScript (and generally for web services). -The most commonly used protocol is HTTP, but it's possible use SMTP, TCP, JMS (Java Message Service). -Requests to a server and its responses are XML documents. POST /InStock HTTP/1.1 Host: Content-Type: application/soap+xml; charset=utf-8 Content-Length: 299 SOAPAction: " IBM POST /InStock HTTP/1.1 Host: Content-Type: application/soap+xml; charset=utf-8 Content-Length: 299 SOAPAction: " IBM

WSDL and UDDI -WSDL (Web Services Description Language) -Language for web serivce interface description based on XML. -Description is readable for machines. -Automatic generation of client source code -UDDI (Universal Description Discovery and Integration) -Web service database -Communication is based on SOAP. -Provide WSDL documents for each API. -It is used mainly in corporations.

Facebook API -Communication is wired with FB application. -Social graph – collection of data created by users of FB as graph structure. -A wide range of services/APIs: -Graph API – Primary API for reading and creating content within Social graph. -Open Graph – A tool for description of objects within Social graph. -Social Plugins – miniapplication for web pages.

Facebook - Graph API -REST API based on JSON. -Official SDK exists for JavaScript, PHP, Android (Java) and iOS (Objective-C). -Application ID and private key is required for communication. -Operations related to the user data are subject of the authorization. -graph.facebook.com /{node-id}/{edge-name}

Facebook - Graph API window.fbAsyncInit = function() { FB.init({ appId : 'ID__OF_APPLICATION', status : true, xfbml : true, version : 'v2.8' }); // There is place for your API callas FB.login(function(response) { FB.api('/me', function(response) { alert('Your name: ' + response.name); }); }, { scope: ' ,user_likes' }); }; (function(d, s, id){ var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) {return;} js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/en_US/all.js"; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk'));

Facebook - Open Graph protocol -Open Graph protocol - -Metadata for object description. -It is used by FB, Google+ (an other) -

Facebook - Social Plugins -Miniapplication dedicates to web pages. -Buttons Like, Share, Send and Follow -Embedded Posts -Comments Plugin -Activity Feed -Registration -Recommendations Bar -And many others…

Google API -All communication is wired with application (key). -Large range of services/APIs (REST) – Maps, YouTube, Google+, Translate, Visualisation, Analytics, AdSense, Calendar, Drive, Web Fonts, Cloud Storage, Cloud SQL, etc... -Well documented. -Official libraries for a wide range of languages – JavaScript, Python, Java, Ruby, PHP, Go, C#

Google Maps -Official SDK: Web (JavaScript), iOS a Android -Require API key. -Own layers and markers. -Free but limited by number of requests. -Includes other API: -Directions -Distance Matrix -Elevation -Geocoding -Time Zone function initialize() { var mapOptions = { center: new google.maps.LatLng( , ), zoom: 8, mapTypeId: google.maps.MapTypeId.ROADMAP }; var el = document.getElementById("map-canvas"); var map = new google.maps.Map(el, mapOptions); } google.maps.event.addDomListener(window, 'load', initialize); function initialize() { var mapOptions = { center: new google.maps.LatLng( , ), zoom: 8, mapTypeId: google.maps.MapTypeId.ROADMAP }; var el = document.getElementById("map-canvas"); var map = new google.maps.Map(el, mapOptions); } google.maps.event.addDomListener(window, 'load', initialize);

Google+ widgets -Button +1, Follow a Share -Embedded posts -Badge -Snippet

OAuth 2.0 -Open standard for authorization (not authentization) to access users data. -Requires SSL (HTTPS) for security process. - Contains several processes/flows of authorization: -User-Agent Flow -Web Server Flow -Username and Password Flow -Assertion Flow -Client Credentials Flow -Used by Facebook, Google, Twitter and many others servers/services.

OAuth 2.0 – Web Server Flow

OAuth 2.0 – User-Agent Flow

Other APIs -Twitter – social network- -Dropbox API – storage - -Box.net – storage - -Flickr – fotogallery- -Last.fm – music- -Foursquare – socila network - -Evernote – notes- -Mapy.cz – maps - -Vimeo – videos -