SlideShare a Scribd company logo
REST Fundamentals
– Applying HTTP Methods
REST
Representational State Transfer
REST
HTTP + Resource-Oriented Architecture
AGENDA - HTTP
HTTP
RESOURCE
STATIC
DYNAMIC
URL
RESOURCE
LOCATOR
RESOUCRE
IDENTIFER
VERBS
GET
POST
PUT
DELETE
CONTENT TYPE MESSAGE
HTTP REQUEST
HTTP RESPONSE
STATUS CODE
1xx -
INFORMATIONAL
2xx - SUCCESSFUL
3xx - REDIRECTION
4xx – CLIENT
ERROR
5xx – SERVER
ERROR
WWW
HTML
WHAT IS THE WEB?
An information system of interlinked hypertext
documents and resources accessed via the
Internet
HYPERTEXT DOCUMENTS
HYPERTEXT MARKUP LANGUAGE
AGENDA - HTTP
HTTP
RESOURCE
STATIC
DYNAMIC
URL
RESOURCE
LOCATOR
RESOUCRE
IDENTIFER
VERBS
GET
POST
PUT
DELETE
CONTENT TYPE MESSAGE
HTTP REQUEST
HTTP RESPONSE
STATUS CODE
1xx -
INFORMATIONAL
2xx - SUCCESSFUL
3xx -
REDIRECTION
4xx – CLIENT
ERROR
5xx – SERVER
ERROR
WWW
HTML
RESOURCES
Anything that can be identified, named, addressed or
handled on the Web
RESOURCE
▫ Can be concrete things:
• Web Pages
• Video files
• Articles
• Blogs
• Image file
RESOURCE
▫ Can be static and dynamic
RESOURCE
▫ Can also represent abstract concepts
• Employee or Product or Order
• Time
• Money Transfer
• Calendar
• User Accounts
AGENDA HTTP
HTTP
RESOURCE
STATIC
DYNAMIC
URL
RESOURCE
LOCATOR
RESOUCRE
IDENTIFER
VERBS
GET
POST
PUT
DELETE
CONTENT TYPE MESSAGE
HTTP REQUEST
HTTP RESPONSE
STATUS CODE
1xx -
INFORMATIONAL
2xx - SUCCESSFUL
3xx -
REDIRECTION
4xx – CLIENT
ERROR
5xx – SERVER
ERROR
WWW
HTML
URL
Uniform Resource Locator
 A URL is a specialization of URI that defines the network
location of resource
 URL defines how the resource can be obtained
eg.
http://some.domain.com/orderinfo?id=123
URL ANOTOMY
UR I - Uniform Resource
I d e n t i f i e r
UR L - Uniform Resource L o c a t o r
RESOURCE IDENTFIERS
A resource only exists on the Webif it has an identifier (URI)
RESOURCE NAMES
▫ URN - Uniform Resource Name
• products/54321
• about-us
• articles/web.html
• posts/2015-01-12
• podcasts/rest.mp3
• products/9595
AGENDA
HTTP
RESOURCE
STATIC
DYNAMIC
URL
RESOURCE
LOCATOR
RESOUCRE
IDENTIFER
CONTENT TYPE VERBS
GET
POST
PUT
DELETE
MESSAGE
HTTP REQUEST
HTTP RESPONSE
STATUS CODE
1xx -
INFORMATIONAL
2xx - SUCCESSFUL
3xx -
REDIRECTION
4xx – CLIENT
ERROR
5xx – SERVER
ERROR
WWW
HTML
 HTTP can transfer any kind of information between clients and
servers
E.g. Text files, PDF, e-documents, images, videos, etc.
 In any case, the data is streamed over TCP/IP and browser
knows how to interpret the binary streams because of the HTTP
protocol response header Content-Type
CONTENT-TYPES
AGENDA
HTTP
RESOURCE
STATIC
DYNAMIC
URL
RESOURCE
LOCATOR
RESOUCRE
IDENTIFER
CONTENT TYPE VERBS
GET
POST
PUT
DELETE
MESSAGE
HTTP REQUEST
HTTP RESPONSE
STATUS CODE
1xx -
INFORMATIONAL
2xx - SUCCESSFUL
3xx -
REDIRECTION
4xx – CLIENT
ERROR
5xx – SERVER
ERROR
WWW
HTML
HTTP VERBS
AGENDA
HTTP
RESOURCE
STATIC
DYNAMIC
URL
RESOURCE
LOCATOR
RESOUCRE
IDENTIFER
CONTENT TYPE VERBS
GET
POST
PUT
DELETE
MESSAGE
HTTP
REQUEST
HTTP
RESPONSE
STATUS CODE
1xx -
INFORMATION
2xx -
SUCCESSFUL
3xx -
REDIRECTION
4xx – CLIENT
ERROR
5xx – SERVER
ERROR
WWW
HTML
HTTP STATUS CODE
 Ser ver ’s processed status corresponding to a request
 Combination of numerical code & short description
AGENDA
HTTP
RESOURCE
STATIC
DYNAMIC
URL
RESOURCE
LOCATOR
RESOUCRE
IDENTIFER
CONTENT TYPE VERBS
GET
POST
PUT
DELETE
MESSAGE
HTTP REQUEST
HTTP
RESPONSE
STATUS CODE
1xx -
INFORMATIONAL
2xx - SUCCESSFUL
3xx -
REDIRECTION
4xx – CLIENT
ERROR
5xx – SERVER
ERROR
WWW
HTML
HYPERTEXT TRANSFER PROTOCOL
Server
Client
Yahoo.comMozilla Firefox
HTTP COMMUNICATION
HTTP MESSAGE - REQUEST
Server
Client
Yahoo.comMozilla Firefox HTTP Request
GET /HTTP/1.1
User-Agent: Mozilla Firefox
Host: example.com
Accept: */*
HYPERTEXT TRANSFER PROTOCOL
ServerClient
Yahoo.comMozilla Firefox
HTTP Response
HTTP/1.1 200 OK
Content-Type: text/html
Content-Length: 1270
<!doctype html>
<html>
<head>
<title>Example Domain</title>
</head>
<body> … </body>
</html>
HTTP request message is sent from the client (Brower)
to HTTP Web-Server.
Request message contain:
 location of a resource or resource URI
 HTTP method to use when accessing the resource.
 Optional request headers (name-value pairs)
providing additional information
 Request body that identifies additional data to be
uploaded to the server (e.g. form parameters,
attachments, etc.)
HTTP REQUEST MESSAGE
HTTP response message is sent from HTTP Web-Server
back to the client (Web-Browser).
Response message contain:
 Carry status of processed request.
 Provide response headers (name-value pairs)
providing additional information about the response
 Supplies optional response body that identifies
additional data to be downloaded to the server (e.g. html,
images, attachments etc.
HTTP RESPONSE MESSAGE
HTTP MESSAGE FORMAT
Request Line
HTTP MESSAGE FORMAT
/fruits/list?category=fruits&limits=
20
Path to
resource
Query string
HTTP /1.1
HTTP HEADER – REQUEST LINE
Request/ Response General Header
 Carry information about the HTTP transaction
 Can be a part of request, as well as response
General Headers
HTTP HEADER – GENERAL
Request Header
 Specific to an HTTP Request
 Carry information about the client, and the type of
request
 Facilitates better understanding between client and
server
Request Headers
HTTP HEADER – REQUEST
Request/ Response Entity Header
 Carry information about the content
 Mainly part of HTTP Response
Entity Headers
HTTP HEADER – ENTITY
HTTP REQUEST RESPONSE MESSAGE EXCHANGE
REST
Representational State Transfer
REST
HTTP + Resource-Oriented Architecture
REST
HTTP + Resource-Oriented Architecture
RESTful
What is REST?
 REST is not a technology, nor a
framework
 REST is an architectural style - Set of
principles & constraints
Why constraints?
 Constraints help us in developing
applications that are “easy” to
maintain and extend.
REST
MAJOR PLAYERS
REST ACTORS
REST
RESOURCES REPRESENTATION ACTIONS
REST ACTORS
REST
RESOURCES REPRESENTATION ACTIONS
 In general, a RESTful resource is anything that is
addressable over Web
 Addressable = anything that can be accessed and
transferred between clients and servers
 Resource must have a unique address over the Web
 Under HTTP these are URIs
RESOURCES
In a RESTful web service, Resources are categorized as:
 Singleton resource is a single chunk of information, similar to a row
in a database table.
 Collection resource is a set of resources with the same structure,
similar to a selection of rows in a database table.
RESOURCES MODEL
Uniform Resource Identifier
 In a RESTful web service, It is a hyperlink to a resource
 Means for clients and servers to exchange representations of
resources
ex.
.../orderinfo?id=123
 Only means to locate a specific resource
 Used to negotiate representations of a given resource
 In the url you give certain parameters that define which
information you want the server to return to you (just like giving
GET variables to a page). Server will respond you with a
resource representation containing the information you’ve
asked
URIs
URIs are also used to link resources
together. ex.
URIs
REST ACTORS
REST
RESOURCES REPRESENTATION ACTIONS
Representation of resources is what is sent back and forth between clients
& servers
So, we never send or receive resources, only their representations
REPRESENTATION
 Format of the representation is determined by the content-
type
 Interaction of the representation on the resource is
determined by the action (GET, POST etc.)
REPRESENTATION
 Different clients are able to consume different
representations of the same resource
A representation can take various forms, such as:
• image
• a text file
• an XML stream
• a JSON stream
 Note: But its resource has to be available through the same
URI
REPRESENTATION FORMATS
REPRESENTATION FORMATS
For human-generated requests through a web browser, a
representation is typically in the form of an HTML page
For automated requests from other web services, readability is not as
important and a more efficient representation can be used such
as XML or JSON
REST ACTORS
REST
RESOURCES REPRESENTATION ACTIONS
ACTIONS
Actions are used to operate on resources
For example, they can be used for
– getting info about a movie
– adding a photo to Flickr
– deleting a file from a folder
 Note: Data transmitted to and from the resource is a
representation of it.
HTTP-BASED ACTIONS
 Note: RESTful web services can also execute logic at the server
level, but remembering that every result must be a resource
representation
HTTP as Uninform Interface
 Note: RESTful web services can also execute logic at the
server level, but remembering that every result must be a
resource representation
HTTP as Uninform Interface
Restful Approach Traditional Approach
Focus on resource names Focused on the actions to be
performed on resources
Four specific actions that we can take
upon resources — Create, Retrieve,
Update, and Delete (CRUD)
Countless actions with no naming or
implementation standards
HTTP as Uninform Interface
Artificial example of a web service handling students in some classroom
Location of the service = http://restfuljava.com/ Resources are
represented as XML streams
CLASSROOM EXAMPLE
Student (identified by name):
http://restfuljava.com/students/{name}
List of students:
http://restfuljava.com/students
CLASSROOM EXAMPLE - URIs
Student Schema
<student>
<name>Jane</name>
<age>10</age>
<link>/students/Jane</link>
</student>
CLASSROOM EXAMPLE - REPRESENTATIONS
Students List:
<students>
<student>
<name>Jane</name>
<age>10</age>
<link>/students/Jane</link>
</student>
<student>
<name>John</name>
<age>11</age>
<link>/students/John</link>
</student>
</students>
CLASSROOM EXAMPLE - REPRESENTATIONS
CLASSROOM EXAMPLE - REPRESENTATIONS
GET POST PUT DELETE
GET is used to RETRIEVE
resources
POST is used to
CREATE resources
PUT is used to
UPDATE resources
DELETE is used to
DELETE resources
No side effects Has side effects Has side effects Has side effects
Can also return only parts
of the resource
The resource
identity/URL is not
known at creation
time
Return updated
resource URL
Used for Read operation
and query
GET EXAMPLE
POST EXAMPLE
Theinitial
GETis
omitted here
PUT EXAMPLE
DELETE EXAMPLE
REST Constraints
1. Uniform Interfaces – Resource Model
• Every resource has a unique id which uniquely identify.
• Every resource has URI [Uniform Resource Identifier].
URI Syntax URI
Resource URL Mapping with HTTP Method
HTTP
Methods
Resource CRUD OperationsResource URI
REST Constraints
REST Constraints
Uniform
Interface
REST Constraints
1. Uniform Interfaces
REST Constraints
1. Uniform Interfaces - Resources
REST Constraints
1. Uniform Interfaces - Resource
• Resource is a chunk of related information of an entity.
• Can be static and dynamic.
• Resources words are ‘NOUNS’ such as Movies, Employees, Products, Photos
REST Constraints
1. Uniform Interfaces – Resource Model
• Singleton resource is a single chunk of information, similar to a row in a database table.
• Collection resource is a set of resources with the same structure, similar to a selection of rows in a
database table.
REST Constraints
1. Uniform Interfaces – Resource Model
• Every resource has a unique id which uniquely identify.
• Every resource has URI [Uniform Resource Identifier].
URI Syntax URI
REST Constraints
1. Uniform Interfaces – Resource Model
Yahoo Social REST APIs
Singleton resource : Following URI defines the profile resource for the user whose ID is 12345.
https://social.yahooapis.com/v1/user/12345/profile
The next URI specifies the connections (friends) for the user whose ID is 6677.
https://social.yahooapis.com/v1/user/6677/connections
Collection resource : Following URI accesses the collection of schools contained in the profile of the user of ID 98765.
https://social.yahooapis.com/v1/user/98765/profile/schools
REST Constraints
1. Uniform Interfaces - Methods
Resource URL Mapping with HTTP
Method
HTTP
Methods
Resource CRUD OperationsResource URI
REST Constraints
HTTP Methods
REST Constraints
1. Uniform Interfaces - Representations
REST Constraints
Stateless
2. Stateless Server
Two types of State
 Application State
 Resource State
REST Constraints
2. Stateless Server
 No client context is stored on the server between requests.
 Each request from any client contains all of the information necessary to
service the request, and any state is held in the client.
 The server can be stateful, this constraint merely requires that server-side
state be addressable by URL as a resource.
REST Constraints
REST Constraints
Application State
Exchange of Request Identify between Server and
Client
REST Constraints
Resource State
What is stored on the server (Beyond Session)
REST Constraints
2. Stateless Server
 Each request contains ALL the information
necessary to understand it
 Application (session) state is kept on the client
REST Constraints
2. Stateless Server
 Visibility -
Performance
 Reliability - Consistency
 Scalability
REST Constraints
Client Server
1. Client - Server
Separation of Concerns:
 Client responsible for UI
 Server responsible for data storage
REST Constraints
1. Client - Server
REST Constraints
+ Scalability
+ Simplicity
REST Constraints
Cache
REST Constraints
3. Cache
 Clients are able to cache responses.
 Responses must, implicitly or explicitly, define themselves as cacheable or
not.
REST Constraints
3. Cache
 Efficiency
 Scalability
 UP
Performance
REST Constraints
Layered
System
AN EXMAPLE
HTTP server:
example.com
READING A TEXT RESOURCE
http://example.com/hello-world.txt
GET /hello-world.txt HTTP/1.1
Host: example.com
HTTP Request
READING A TEXT RESOURCE
http://example.com/hello-world.txt
HTTP Response
HTTP/1.1 200 OK
Content-Type: text/plain
Content-Length: 13
Hello, World!
CREATING A TEXT RESOURCE
POST / HTTP/1.1
Host: example.com
Content-type: text/plan
Hello Mars
HTTP Request
CREATING A TEXT RESOURCE
HTTP/1.1 201 Created
Location: /hello-mars.txt
HTTP Response
RESOURCE DOES NOT EXIST
http://example.com/hello-world.txt
GET /hello-world.txt HTTP/1.1
Host: example.com
HTTP Request
RESOURCE DOES NOT EXIST
HTTP/1.1 404 Not Found
HTTP Response
EMPLOYEE RESOURCE
 Name
 Gender
 Role
XML REPRESENTATION
<employee>
<name>Alice</name>
<role>Developer</role>
<gender>female</gender>
</employee>
JSON REPRESENTATION
{
"name": "Alice",
"role": "Developer",
"gender": "female"
}
HTML REPRESENTATION
<h1>Alice</h1>
<dl>
<dt>Role:</dt>
<dd>Developer</dd>
<dt>Gender:</dt>
<dd>Female</dd>
</dl>
EMPLOYEE RESOURCE
/employees/alice
/employees/bob
/employees/eve
RESOURCE OPERATIONS
LIST EMPLOYEE RESOURCES
GET /employees HTTP/1.1
Host: example.com
Accept: application/xml
HTTP Request
LIST EMPLOYEE RESOURCES
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/xml
<employees>
<employee href="/employees/alice"/>
<employee href="/employees/bob"/>
<employee href="/employees/eve"/>
</employee>
LIST EMPLOYEE RESOURCES
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/xml
<employees>
<employee href="/employees/alice"/>
<employee href="/employees/bob"/>
<employee href="/employees/eve"/>
</employee>
READ EMPLOYEE RESOURCE
GET /employees/alice HTTP/1.1
Host: example.com
Accept: application/xml
HTTP Request
READ EMPLOYEE RESOURCE
HTTP Response
HTTP/1.1 200 OK
Content-Type: application/xml
<employees>
<name>Alice</name>
<role>Developer</role>
<gender>Female</gender>
</employee>
CREATE EMPLOYEE RESOURCE
HTTP Request
POST /employees HTTP/1.1
Host: example.com
Content-Type: application/xml
<employee>
<name>John</name>
<role>QA</role>
<gender>male</gender>
</employee>
CREATE EMPLOYEE RESOURCE
HTTP Response
HTTP/1.1 200 OK
UPDATE EMPLOYEE RESOURCE
HTTP Request
PUT /employees/alice HTTP/1.1
Host: example.com
Content-Type: application/xml
<employee>
<name>Alice</name>
<role>Manager</role>
<gender>female</gender>
</employee>
UPDATE EMPLOYEE RESOURCE
HTTP Response
HTTP/1.1 201 Created
Location: /employees/john
DELETE EMPLOYEE RESOURCE
HTTP Request
DELETE /employees/alice HTTP/1.1
Host: example.com
Content-Type: application/xml
DELETE EMPLOYEE RESOURCE
HTTP Response
HTTP/1.1 204 NO Content
RESOURCE ORIENTED ARCHITECTURE
 Addressability
 Statelessness
 Connectedness
 Uniform Interface
ADDRESSSABILITY
Every interesting piece of information the server can provide
should be exposed as a resource, and given its own URI
http://example.com/employees/alice
STATELESSNESS
Every HTTP request should happen in complete isolation
http://google.com/search?q=jellyfish
STATELESSNESS
STATELESSNESS
http://google.com/search?q=jellyfish&start=10
STATELESSNESS
Application State vs. Resource State
CONNECTEDNESS
Documents should contain not just data, but
links to other resources
CONNECTEDNESS
CONNECTEDNESS
CONNECTEDNESS
CONNECTEDNESS
{
"employees": [ "/employees/alice",
"/employees/bob",
"/employees/eve",
...
]
"next_page": "/employees?start=10",
"create_employee": "/employees"
}
HATEOS
Hypermedia As The Engine of Application State
REST Constraints

More Related Content

What's hot

RESTful web services using java and spring
RESTful web services using java and springRESTful web services using java and spring
RESTful web services using java and spring
Muhammad Junaid Ansari
 
Deploying RDF Linked Data via Virtuoso Universal Server
Deploying RDF Linked Data via Virtuoso Universal ServerDeploying RDF Linked Data via Virtuoso Universal Server
Deploying RDF Linked Data via Virtuoso Universal Server
rumito
 
Best Practices in Api Design
Best Practices in Api DesignBest Practices in Api Design
Best Practices in Api Design
Muhammad Aamir ...
 
HTTP Request and Response Structure
HTTP Request and Response StructureHTTP Request and Response Structure
HTTP Request and Response Structure
BhagyashreeGajera1
 
The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016
Restlet
 
Restful web services
Restful web servicesRestful web services
Restful web services
Surinder Mehra
 
How to design a good REST API: Tools, techniques and best practices
How to design a good REST API: Tools, techniques and best practicesHow to design a good REST API: Tools, techniques and best practices
How to design a good REST API: Tools, techniques and best practices
WSO2
 
WebLogic Developer Webcast 1: JPA 2.0
WebLogic Developer Webcast 1: JPA 2.0WebLogic Developer Webcast 1: JPA 2.0
WebLogic Developer Webcast 1: JPA 2.0
Jeffrey West
 
Virtuoso Universal Server Overview
Virtuoso Universal Server OverviewVirtuoso Universal Server Overview
Virtuoso Universal Server Overview
rumito
 
Odata
OdataOdata
REST API Design
REST API DesignREST API Design
REST API Design
Devi Kiran G
 
Solving Real Problems Using Linked Data
Solving Real Problems Using Linked DataSolving Real Problems Using Linked Data
Solving Real Problems Using Linked Data
rumito
 
Novelties in Java EE 7: JAX-RS 2.0 + IPT REST HATEOAS Polling Demo @ BGOUG Co...
Novelties in Java EE 7: JAX-RS 2.0 + IPT REST HATEOAS Polling Demo @ BGOUG Co...Novelties in Java EE 7: JAX-RS 2.0 + IPT REST HATEOAS Polling Demo @ BGOUG Co...
Novelties in Java EE 7: JAX-RS 2.0 + IPT REST HATEOAS Polling Demo @ BGOUG Co...
Trayan Iliev
 
A Look at OData
A Look at ODataA Look at OData
A Look at OData
Woodruff Solutions LLC
 
REST Architecture with use case and example
REST Architecture with use case and exampleREST Architecture with use case and example
REST Architecture with use case and example
Shailesh singh
 
Introduction to OData
Introduction to ODataIntroduction to OData
Introduction to OData
Mindfire Solutions
 
Ibm Content Manager Connector Overview0001 1
Ibm Content Manager Connector Overview0001 1Ibm Content Manager Connector Overview0001 1
Ibm Content Manager Connector Overview0001 1
AdhereSolutions
 
DC-2008 Tutorial 3 - Dublin Core and other metadata schemas
DC-2008 Tutorial 3 - Dublin Core and other metadata schemasDC-2008 Tutorial 3 - Dublin Core and other metadata schemas
DC-2008 Tutorial 3 - Dublin Core and other metadata schemas
Mikael Nilsson
 
B08 A3pc 90 Diapo Damy En
B08 A3pc 90 Diapo Damy EnB08 A3pc 90 Diapo Damy En
B08 A3pc 90 Diapo Damy En
Territorial Intelligence
 
Indexing HP's Trim Context with the Google Search Appliance
Indexing HP's Trim Context with the Google Search ApplianceIndexing HP's Trim Context with the Google Search Appliance
Indexing HP's Trim Context with the Google Search Appliance
AdhereSolutions
 

What's hot (20)

RESTful web services using java and spring
RESTful web services using java and springRESTful web services using java and spring
RESTful web services using java and spring
 
Deploying RDF Linked Data via Virtuoso Universal Server
Deploying RDF Linked Data via Virtuoso Universal ServerDeploying RDF Linked Data via Virtuoso Universal Server
Deploying RDF Linked Data via Virtuoso Universal Server
 
Best Practices in Api Design
Best Practices in Api DesignBest Practices in Api Design
Best Practices in Api Design
 
HTTP Request and Response Structure
HTTP Request and Response StructureHTTP Request and Response Structure
HTTP Request and Response Structure
 
The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016The never-ending REST API design debate -- Devoxx France 2016
The never-ending REST API design debate -- Devoxx France 2016
 
Restful web services
Restful web servicesRestful web services
Restful web services
 
How to design a good REST API: Tools, techniques and best practices
How to design a good REST API: Tools, techniques and best practicesHow to design a good REST API: Tools, techniques and best practices
How to design a good REST API: Tools, techniques and best practices
 
WebLogic Developer Webcast 1: JPA 2.0
WebLogic Developer Webcast 1: JPA 2.0WebLogic Developer Webcast 1: JPA 2.0
WebLogic Developer Webcast 1: JPA 2.0
 
Virtuoso Universal Server Overview
Virtuoso Universal Server OverviewVirtuoso Universal Server Overview
Virtuoso Universal Server Overview
 
Odata
OdataOdata
Odata
 
REST API Design
REST API DesignREST API Design
REST API Design
 
Solving Real Problems Using Linked Data
Solving Real Problems Using Linked DataSolving Real Problems Using Linked Data
Solving Real Problems Using Linked Data
 
Novelties in Java EE 7: JAX-RS 2.0 + IPT REST HATEOAS Polling Demo @ BGOUG Co...
Novelties in Java EE 7: JAX-RS 2.0 + IPT REST HATEOAS Polling Demo @ BGOUG Co...Novelties in Java EE 7: JAX-RS 2.0 + IPT REST HATEOAS Polling Demo @ BGOUG Co...
Novelties in Java EE 7: JAX-RS 2.0 + IPT REST HATEOAS Polling Demo @ BGOUG Co...
 
A Look at OData
A Look at ODataA Look at OData
A Look at OData
 
REST Architecture with use case and example
REST Architecture with use case and exampleREST Architecture with use case and example
REST Architecture with use case and example
 
Introduction to OData
Introduction to ODataIntroduction to OData
Introduction to OData
 
Ibm Content Manager Connector Overview0001 1
Ibm Content Manager Connector Overview0001 1Ibm Content Manager Connector Overview0001 1
Ibm Content Manager Connector Overview0001 1
 
DC-2008 Tutorial 3 - Dublin Core and other metadata schemas
DC-2008 Tutorial 3 - Dublin Core and other metadata schemasDC-2008 Tutorial 3 - Dublin Core and other metadata schemas
DC-2008 Tutorial 3 - Dublin Core and other metadata schemas
 
B08 A3pc 90 Diapo Damy En
B08 A3pc 90 Diapo Damy EnB08 A3pc 90 Diapo Damy En
B08 A3pc 90 Diapo Damy En
 
Indexing HP's Trim Context with the Google Search Appliance
Indexing HP's Trim Context with the Google Search ApplianceIndexing HP's Trim Context with the Google Search Appliance
Indexing HP's Trim Context with the Google Search Appliance
 

Viewers also liked

Restul web development
Restul web developmentRestul web development
Restul web development
Setfire Media
 
Implementation advantages of rest
Implementation advantages of restImplementation advantages of rest
Implementation advantages of rest
Balamurugan Easwaran
 
Introduction to RESTful Webservices in JAVA
Introduction to RESTful Webservices  in JAVA Introduction to RESTful Webservices  in JAVA
Introduction to RESTful Webservices in JAVA
psrpatnaik
 
M2M Protocol Interoperability using IoT Toolkit
M2M Protocol Interoperability using IoT ToolkitM2M Protocol Interoperability using IoT Toolkit
M2M Protocol Interoperability using IoT Toolkit
Michael Koster
 
Internet of Things: Protocols for M2M
Internet of Things: Protocols for M2MInternet of Things: Protocols for M2M
Internet of Things: Protocols for M2M
Charles Gibbons
 
Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?
Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?
Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?
Julien Vermillard
 
REST 101: An Overview To Representational State Transfer.
REST 101: An Overview To Representational State Transfer.REST 101: An Overview To Representational State Transfer.
REST 101: An Overview To Representational State Transfer.
Omar Fernando Zafe
 
MQTT - A practical protocol for the Internet of Things
MQTT - A practical protocol for the Internet of ThingsMQTT - A practical protocol for the Internet of Things
MQTT - A practical protocol for the Internet of Things
Bryan Boyd
 
Internet of Things (IoT) protocols COAP MQTT OSCON2014
Internet of Things (IoT) protocols  COAP MQTT OSCON2014Internet of Things (IoT) protocols  COAP MQTT OSCON2014
Internet of Things (IoT) protocols COAP MQTT OSCON2014
Vidhya Gholkar
 

Viewers also liked (9)

Restul web development
Restul web developmentRestul web development
Restul web development
 
Implementation advantages of rest
Implementation advantages of restImplementation advantages of rest
Implementation advantages of rest
 
Introduction to RESTful Webservices in JAVA
Introduction to RESTful Webservices  in JAVA Introduction to RESTful Webservices  in JAVA
Introduction to RESTful Webservices in JAVA
 
M2M Protocol Interoperability using IoT Toolkit
M2M Protocol Interoperability using IoT ToolkitM2M Protocol Interoperability using IoT Toolkit
M2M Protocol Interoperability using IoT Toolkit
 
Internet of Things: Protocols for M2M
Internet of Things: Protocols for M2MInternet of Things: Protocols for M2M
Internet of Things: Protocols for M2M
 
Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?
Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?
Iot Conference Berlin M2M,IoT, device management: one protocol to rule them all?
 
REST 101: An Overview To Representational State Transfer.
REST 101: An Overview To Representational State Transfer.REST 101: An Overview To Representational State Transfer.
REST 101: An Overview To Representational State Transfer.
 
MQTT - A practical protocol for the Internet of Things
MQTT - A practical protocol for the Internet of ThingsMQTT - A practical protocol for the Internet of Things
MQTT - A practical protocol for the Internet of Things
 
Internet of Things (IoT) protocols COAP MQTT OSCON2014
Internet of Things (IoT) protocols  COAP MQTT OSCON2014Internet of Things (IoT) protocols  COAP MQTT OSCON2014
Internet of Things (IoT) protocols COAP MQTT OSCON2014
 

Similar to Restful Fundamentals

REST Basics
REST BasicsREST Basics
REST Basics
Ivano Malavolta
 
ROA.ppt
ROA.pptROA.ppt
ROA.ppt
KGSCSEPSGCT
 
[2015/2016] The REST architectural style
[2015/2016] The REST architectural style[2015/2016] The REST architectural style
[2015/2016] The REST architectural style
Ivano Malavolta
 
Rest introduction
Rest introductionRest introduction
Rest introduction
William Martinez Pomares
 
Rest
Rest Rest
ReSTful API Final
ReSTful API FinalReSTful API Final
ReSTful API Final
Claudine Bruyns
 
A Conversation About REST
A Conversation About RESTA Conversation About REST
A Conversation About REST
Jeremy Brown
 
A Conversation About REST
A Conversation About RESTA Conversation About REST
A Conversation About REST
Mike Wilcox
 
Restful web services with java
Restful web services with javaRestful web services with java
Restful web services with java
Vinay Gopinath
 
RESTful Web Services
RESTful Web ServicesRESTful Web Services
RESTful Web Services
Imran M Yousuf
 
RESTful services
RESTful servicesRESTful services
RESTful services
gouthamrv
 
Learn REST API at ASIT
Learn REST API at ASITLearn REST API at ASIT
Learn REST API at ASIT
ASIT
 
Building Restful Applications Using Php
Building Restful Applications Using PhpBuilding Restful Applications Using Php
Building Restful Applications Using Php
Sudheer Satyanarayana
 
JAX-RS. Developing RESTful APIs with Java
JAX-RS. Developing RESTful APIs with JavaJAX-RS. Developing RESTful APIs with Java
JAX-RS. Developing RESTful APIs with Java
Jerry Kurian
 
Network Device Database Management with REST using Jersey
Network Device Database Management with REST using JerseyNetwork Device Database Management with REST using Jersey
Network Device Database Management with REST using Jersey
Payal Jain
 
WebApp #3 : API
WebApp #3 : APIWebApp #3 : API
WebApp #3 : API
Jean Michel
 
Restful web-services
Restful web-servicesRestful web-services
Restful web-services
rporwal
 
OpenTravel Advisory Forum 2012 REST XML Resources
OpenTravel Advisory Forum 2012 REST XML ResourcesOpenTravel Advisory Forum 2012 REST XML Resources
OpenTravel Advisory Forum 2012 REST XML Resources
OpenTravel Alliance
 
RESTful SOA - 中科院暑期讲座
RESTful SOA - 中科院暑期讲座RESTful SOA - 中科院暑期讲座
RESTful SOA - 中科院暑期讲座
Li Yi
 
ASP.NET WEB API Training
ASP.NET WEB API TrainingASP.NET WEB API Training
ASP.NET WEB API Training
Chalermpon Areepong
 

Similar to Restful Fundamentals (20)

REST Basics
REST BasicsREST Basics
REST Basics
 
ROA.ppt
ROA.pptROA.ppt
ROA.ppt
 
[2015/2016] The REST architectural style
[2015/2016] The REST architectural style[2015/2016] The REST architectural style
[2015/2016] The REST architectural style
 
Rest introduction
Rest introductionRest introduction
Rest introduction
 
Rest
Rest Rest
Rest
 
ReSTful API Final
ReSTful API FinalReSTful API Final
ReSTful API Final
 
A Conversation About REST
A Conversation About RESTA Conversation About REST
A Conversation About REST
 
A Conversation About REST
A Conversation About RESTA Conversation About REST
A Conversation About REST
 
Restful web services with java
Restful web services with javaRestful web services with java
Restful web services with java
 
RESTful Web Services
RESTful Web ServicesRESTful Web Services
RESTful Web Services
 
RESTful services
RESTful servicesRESTful services
RESTful services
 
Learn REST API at ASIT
Learn REST API at ASITLearn REST API at ASIT
Learn REST API at ASIT
 
Building Restful Applications Using Php
Building Restful Applications Using PhpBuilding Restful Applications Using Php
Building Restful Applications Using Php
 
JAX-RS. Developing RESTful APIs with Java
JAX-RS. Developing RESTful APIs with JavaJAX-RS. Developing RESTful APIs with Java
JAX-RS. Developing RESTful APIs with Java
 
Network Device Database Management with REST using Jersey
Network Device Database Management with REST using JerseyNetwork Device Database Management with REST using Jersey
Network Device Database Management with REST using Jersey
 
WebApp #3 : API
WebApp #3 : APIWebApp #3 : API
WebApp #3 : API
 
Restful web-services
Restful web-servicesRestful web-services
Restful web-services
 
OpenTravel Advisory Forum 2012 REST XML Resources
OpenTravel Advisory Forum 2012 REST XML ResourcesOpenTravel Advisory Forum 2012 REST XML Resources
OpenTravel Advisory Forum 2012 REST XML Resources
 
RESTful SOA - 中科院暑期讲座
RESTful SOA - 中科院暑期讲座RESTful SOA - 中科院暑期讲座
RESTful SOA - 中科院暑期讲座
 
ASP.NET WEB API Training
ASP.NET WEB API TrainingASP.NET WEB API Training
ASP.NET WEB API Training
 

Recently uploaded

C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptxC1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
mulvey2
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
RAHUL
 
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptxPrésentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
siemaillard
 
Walmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdfWalmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdf
TechSoup
 
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdfREASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
giancarloi8888
 
Pengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptxPengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptx
Fajar Baskoro
 
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptxRESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
zuzanka
 
Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...
PsychoTech Services
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
haiqairshad
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
PECB
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
Nguyen Thanh Tu Collection
 
Wound healing PPT
Wound healing PPTWound healing PPT
Wound healing PPT
Jyoti Chand
 
HYPERTENSION - SLIDE SHARE PRESENTATION.
HYPERTENSION - SLIDE SHARE PRESENTATION.HYPERTENSION - SLIDE SHARE PRESENTATION.
HYPERTENSION - SLIDE SHARE PRESENTATION.
deepaannamalai16
 
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem studentsRHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
Himanshu Rai
 
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
National Information Standards Organization (NISO)
 
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
imrankhan141184
 
Benner "Expanding Pathways to Publishing Careers"
Benner "Expanding Pathways to Publishing Careers"Benner "Expanding Pathways to Publishing Careers"
Benner "Expanding Pathways to Publishing Careers"
National Information Standards Organization (NISO)
 
Nutrition Inc FY 2024, 4 - Hour Training
Nutrition Inc FY 2024, 4 - Hour TrainingNutrition Inc FY 2024, 4 - Hour Training
Nutrition Inc FY 2024, 4 - Hour Training
melliereed
 
Level 3 NCEA - NZ: A Nation In the Making 1872 - 1900 SML.ppt
Level 3 NCEA - NZ: A  Nation In the Making 1872 - 1900 SML.pptLevel 3 NCEA - NZ: A  Nation In the Making 1872 - 1900 SML.ppt
Level 3 NCEA - NZ: A Nation In the Making 1872 - 1900 SML.ppt
Henry Hollis
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
Nguyen Thanh Tu Collection
 

Recently uploaded (20)

C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptxC1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
C1 Rubenstein AP HuG xxxxxxxxxxxxxx.pptx
 
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UPLAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
LAND USE LAND COVER AND NDVI OF MIRZAPUR DISTRICT, UP
 
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptxPrésentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
Présentationvvvvvvvvvvvvvvvvvvvvvvvvvvvv2.pptx
 
Walmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdfWalmart Business+ and Spark Good for Nonprofits.pdf
Walmart Business+ and Spark Good for Nonprofits.pdf
 
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdfREASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
REASIGNACION 2024 UGEL CHUPACA 2024 UGEL CHUPACA.pdf
 
Pengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptxPengantar Penggunaan Flutter - Dart programming language1.pptx
Pengantar Penggunaan Flutter - Dart programming language1.pptx
 
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptxRESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
RESULTS OF THE EVALUATION QUESTIONNAIRE.pptx
 
Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...Gender and Mental Health - Counselling and Family Therapy Applications and In...
Gender and Mental Health - Counselling and Family Therapy Applications and In...
 
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skillsspot a liar (Haiqa 146).pptx Technical writhing and presentation skills
spot a liar (Haiqa 146).pptx Technical writhing and presentation skills
 
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
ISO/IEC 27001, ISO/IEC 42001, and GDPR: Best Practices for Implementation and...
 
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
BÀI TẬP BỔ TRỢ TIẾNG ANH 8 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2023-2024 (CÓ FI...
 
Wound healing PPT
Wound healing PPTWound healing PPT
Wound healing PPT
 
HYPERTENSION - SLIDE SHARE PRESENTATION.
HYPERTENSION - SLIDE SHARE PRESENTATION.HYPERTENSION - SLIDE SHARE PRESENTATION.
HYPERTENSION - SLIDE SHARE PRESENTATION.
 
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem studentsRHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
RHEOLOGY Physical pharmaceutics-II notes for B.pharm 4th sem students
 
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
Jemison, MacLaughlin, and Majumder "Broadening Pathways for Editors and Authors"
 
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
Traditional Musical Instruments of Arunachal Pradesh and Uttar Pradesh - RAYH...
 
Benner "Expanding Pathways to Publishing Careers"
Benner "Expanding Pathways to Publishing Careers"Benner "Expanding Pathways to Publishing Careers"
Benner "Expanding Pathways to Publishing Careers"
 
Nutrition Inc FY 2024, 4 - Hour Training
Nutrition Inc FY 2024, 4 - Hour TrainingNutrition Inc FY 2024, 4 - Hour Training
Nutrition Inc FY 2024, 4 - Hour Training
 
Level 3 NCEA - NZ: A Nation In the Making 1872 - 1900 SML.ppt
Level 3 NCEA - NZ: A  Nation In the Making 1872 - 1900 SML.pptLevel 3 NCEA - NZ: A  Nation In the Making 1872 - 1900 SML.ppt
Level 3 NCEA - NZ: A Nation In the Making 1872 - 1900 SML.ppt
 
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
BÀI TẬP BỔ TRỢ TIẾNG ANH LỚP 9 CẢ NĂM - GLOBAL SUCCESS - NĂM HỌC 2024-2025 - ...
 

Restful Fundamentals