SlideShare a Scribd company logo
Dian Wahyu Aditya [email_address] REST v 2.3
Agenda REST Overview
Core Concept
Web Service Demo Struts2
Spring MVC
Android Client
REST? Representational State Transfer # Defined by Roy T. Fielding in his doctoral dissertation. (Co-founder of Apache HTTP Project) An Architectural Style
REST? Representational State Transfer #Use HTTP, URI, and other web standard correctly Web Used Correctly
REST CORE CONCEPT
REST: Core Concept “ Things are Resources” Resources  can be items of information (a blog entry) or informational descriptions of real things (a blog author) RESOURCE
REST: Core Concept “ Resource Have URIs”   Uniform Resource Identifier  are unique ids for resources. RESOURCE U R I
REST: Core Concept “ Resources have Representation” Representations  can have different formats (HTML, XML, JSON). RESOURCE U R I REPRESENTATION REPRESENTATION
REST: Core Concept “ Representations have URLs” Uniform Resource Locators  describe how to get to a representation of a resource, they include protocol, hostname, path and extra information. RESOURCE U R I REPRESENTATION REPRESENTATION URL URL URL
REST: Core Concept “ Client interact via Verbs” RESOURCE U R I REPRESENTATION REPRESENTATION URL URL URL POST GET PUT DELETE
RESTFul Web Service
RESTFul Web Service “ Use HTTP Standard Methods” Retrieve GET Update PUT Create POST Remove DELETE
RESTFul Web Service “ Use Standard Methods / Uniform Interface” Safe GET Idempotent PUT Idempotent DELETE
RESTFul Web Service “ Use Standard Methods / Uniform Interface” Safe method # There are no side-effects # The requested resource stays unmodified Idempotent # Issuing the same request multiple times yields the same result
RESTFul Web Service “ All About the URIs” http://blog.mervpolis.com/roller/dwx http://blog.mervpolis.com/roller/dwx/category/Java http://blog.mervpolis.com/roller/dwx/date/201009 http://blog.mervpolis.com/roller/dwx/entry/hibernate_event_listener Directory Structure-like URIs To the Point Easy to Guess
RESTFul Web Service GET /deleteuser?name=Robert HTTP/1.1 DELETE /user/Robert HTTP/1.1

More Related Content

PDF
From Open Source to Open API with Restlet
PDF
Getting Started with Rails (3)
PPTX
10x10 on <link />
PPTX
REST Easy with AngularJS - ng-grid CRUD EXAMPLE
PDF
All about elasticsearch language clients
PPT
Poli 2.0 - APIs
PPTX
Introduction To REST
ODP
The Internet as Web Services: introduction to ReST
From Open Source to Open API with Restlet
Getting Started with Rails (3)
10x10 on <link />
REST Easy with AngularJS - ng-grid CRUD EXAMPLE
All about elasticsearch language clients
Poli 2.0 - APIs
Introduction To REST
The Internet as Web Services: introduction to ReST

What's hot (16)

PDF
What is REST API? REST API Concepts and Examples | Edureka
PDF
Building Awesome APIs with Lumen
ODP
Services Stanford 2012
PPT
Hanoi php day 2008 - 05. nguyen hai nhat huy - building-restful-web-service-w...
PDF
Learn REST in 18 Slides
PPTX
Understanding REST APIs in 5 Simple Steps
PPTX
Endpoint node.js framework presentation
PDF
Building RESTful Applications
PDF
Building RESTful applications using Spring MVC
PPT
Web crawler
PDF
Dicoding Developer Coaching #20: Android | Apa itu Content Provider?
PPTX
Web Quick Start: Under the Covers
PDF
5. web api 2 aspdotnet-mvc5-slides
PPTX
Stefaan Ponnet, Fusebox
PPTX
Securing RESTful Payment APIs Using OAuth 2
PPTX
What is REST API? REST API Concepts and Examples | Edureka
Building Awesome APIs with Lumen
Services Stanford 2012
Hanoi php day 2008 - 05. nguyen hai nhat huy - building-restful-web-service-w...
Learn REST in 18 Slides
Understanding REST APIs in 5 Simple Steps
Endpoint node.js framework presentation
Building RESTful Applications
Building RESTful applications using Spring MVC
Web crawler
Dicoding Developer Coaching #20: Android | Apa itu Content Provider?
Web Quick Start: Under the Covers
5. web api 2 aspdotnet-mvc5-slides
Stefaan Ponnet, Fusebox
Securing RESTful Payment APIs Using OAuth 2
Ad

Similar to RESTFul WebApp Concept (20)

PDF
Creating Restful Web Services with restish
PPTX
Introduction to Web Services
PPTX
Rest webservice ppt
PPTX
REST & RESTful Web Services
PPT
ROA.ppt
PPTX
RESTful_Web_Services_Presentation (1).pptx
PDF
BeJUG JAX-RS Event
PPT
RESTful SOA - 中科院暑期讲座
PDF
Rest web services
PPSX
Restful web services rule financial
PPTX
Unerstanding and Using RESTful APIs
PPTX
RESTful Web Services
PPTX
Understanding and Using Rest APIs (SocialDevCamp Chicago 2009)
PPT
RESTful services
PPTX
Rest with Java EE 6 , Security , Backbone.js
PPTX
PPTX
REST Presentation
PDF
Introduction to Restful Web Services
PDF
REST Basics
PPTX
RESTful APIs in .NET
Creating Restful Web Services with restish
Introduction to Web Services
Rest webservice ppt
REST & RESTful Web Services
ROA.ppt
RESTful_Web_Services_Presentation (1).pptx
BeJUG JAX-RS Event
RESTful SOA - 中科院暑期讲座
Rest web services
Restful web services rule financial
Unerstanding and Using RESTful APIs
RESTful Web Services
Understanding and Using Rest APIs (SocialDevCamp Chicago 2009)
RESTful services
Rest with Java EE 6 , Security , Backbone.js
REST Presentation
Introduction to Restful Web Services
REST Basics
RESTful APIs in .NET
Ad

Recently uploaded (20)

PPTX
A Presentation on Artificial Intelligence
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Encapsulation theory and applications.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Empathic Computing: Creating Shared Understanding
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Getting Started with Data Integration: FME Form 101
PDF
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
PPTX
SOPHOS-XG Firewall Administrator PPT.pptx
PPTX
Machine Learning_overview_presentation.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
Big Data Technologies - Introduction.pptx
A Presentation on Artificial Intelligence
Reach Out and Touch Someone: Haptics and Empathic Computing
NewMind AI Weekly Chronicles - August'25-Week II
A comparative analysis of optical character recognition models for extracting...
Encapsulation theory and applications.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Empathic Computing: Creating Shared Understanding
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Assigned Numbers - 2025 - Bluetooth® Document
“AI and Expert System Decision Support & Business Intelligence Systems”
Group 1 Presentation -Planning and Decision Making .pptx
Getting Started with Data Integration: FME Form 101
Optimiser vos workloads AI/ML sur Amazon EC2 et AWS Graviton
SOPHOS-XG Firewall Administrator PPT.pptx
Machine Learning_overview_presentation.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
MYSQL Presentation for SQL database connectivity
Big Data Technologies - Introduction.pptx

RESTFul WebApp Concept

  • 1. Dian Wahyu Aditya [email_address] REST v 2.3
  • 7. REST? Representational State Transfer # Defined by Roy T. Fielding in his doctoral dissertation. (Co-founder of Apache HTTP Project) An Architectural Style
  • 8. REST? Representational State Transfer #Use HTTP, URI, and other web standard correctly Web Used Correctly
  • 10. REST: Core Concept “ Things are Resources” Resources can be items of information (a blog entry) or informational descriptions of real things (a blog author) RESOURCE
  • 11. REST: Core Concept “ Resource Have URIs” Uniform Resource Identifier are unique ids for resources. RESOURCE U R I
  • 12. REST: Core Concept “ Resources have Representation” Representations can have different formats (HTML, XML, JSON). RESOURCE U R I REPRESENTATION REPRESENTATION
  • 13. REST: Core Concept “ Representations have URLs” Uniform Resource Locators describe how to get to a representation of a resource, they include protocol, hostname, path and extra information. RESOURCE U R I REPRESENTATION REPRESENTATION URL URL URL
  • 14. REST: Core Concept “ Client interact via Verbs” RESOURCE U R I REPRESENTATION REPRESENTATION URL URL URL POST GET PUT DELETE
  • 16. RESTFul Web Service “ Use HTTP Standard Methods” Retrieve GET Update PUT Create POST Remove DELETE
  • 17. RESTFul Web Service “ Use Standard Methods / Uniform Interface” Safe GET Idempotent PUT Idempotent DELETE
  • 18. RESTFul Web Service “ Use Standard Methods / Uniform Interface” Safe method # There are no side-effects # The requested resource stays unmodified Idempotent # Issuing the same request multiple times yields the same result
  • 19. RESTFul Web Service “ All About the URIs” http://blog.mervpolis.com/roller/dwx http://blog.mervpolis.com/roller/dwx/category/Java http://blog.mervpolis.com/roller/dwx/date/201009 http://blog.mervpolis.com/roller/dwx/entry/hibernate_event_listener Directory Structure-like URIs To the Point Easy to Guess
  • 20. RESTFul Web Service GET /deleteuser?name=Robert HTTP/1.1 DELETE /user/Robert HTTP/1.1
  • 21. RESTFul Web Service “ Uniform Interface”
  • 22. RESTFul Web Service “ Stateless” GET /resources/getNextPage? HTTP/1.1 Client Web service <?xml version=”1.0” ?> <rsp stat=”ok”> <resource id=”1” /> <resource id=”2” /> ... <rsp> PreviousPage++; NextPage= previousPage; return nextPage Stateful design
  • 23. RESTFul Web Service “ Stateless” GET /resources/?page=2 HTTP/1.1 Client Web service <?xml version=”1.0” ?> <rsp page=”2” nextPage = “3” > <resource id=”1” /> <resource id=”2” /> ... <rsp> getPage(2); Stateless design
  • 24. RESTFul Web Service “ Allow Multiple Representation” GET /technology Host: www.telegraph.co.uk Accept: text/html ;charset=ISO-8859-1 GET /technology /rss Host: www.telegraph.co.uk Accept: text/xml ;charset=UTF-8 <html> ... </html> <rss version=&quot;2.0&quot;> ... </rss>