In 30 Seconds: A Quick Guide to RESTful Web Services
As an alternative to SOAP, XML-RPC, etc., REST stands for Representations State Transfer, and it provides simple, platform-neutral data exchange using the HTTP transport. You’ve been hearing about it a lot from Ruby on Rails guys (as of Rails 1.2 built-in APIs exist for exposing all your models to the web with a line or two of code), but most every other development platform has some form of support. RESTful systems expose data through unique URLs using the same simple methods that made the Web ubiquitous (HTTP and URIs). Using HTTP Verbs (PUT, POST, GET, DELETE) and a URI, the server will take an appropriate action on the request. RESTful systems map very closely to CRUD based-data operations.
Examples:
- A http DELETE requested from the URL http://www.simplifiedchaos.com/articles/123452 will DELETE article #123452
- A http PUT with the same URL will update the data
- A POST will create the data;
- A GET will read the data.
To help you get started with REST, here’s some links that I found useful:
- From the July 2007 issue of Dr Dobb’s, SOA, Web Services, and RESTful Systems (Good introduction and Java specific sample code).
- Joe Gregorio over at XML.Com has an excellent collection of articles. Start with How to Create a REST Protocol.
- RESTful Rails Development is geared towards the Ruby on Rails developer, but has an excellent introduction explaining some of the benefits: clean URLs, less code, CRUD applications, clearer app design.
- For .NET and Java Developers: Simple JAVA and .NET SOA interoperability.
- For Java Developers: Gomba Java RESTful Web Services, The REST of the Web.
- Yahoo! REST Discussion Group
- Wikipedia’s REST entry
- The Official REST Wiki
There is plenty of reading here to get you started, enjoy.
Comments
Comment from taude
Date: June 15, 2007, 10:15 am
Thanks K. Adam, I corrected it.
Pingback from JAX-WS (web services) learning guide « When IE meets SE
Date: June 16, 2007, 4:13 pm
[...] In 30 Seconds: A Quick Guide to RESTful Web Services [...]
Comment from wedtuajqyg
Date: July 3, 2007, 2:29 pm
Hello! Good Site! Thanks you! zojszfyfmweoeq


Comment from K. Adam Christensen
Date: June 15, 2007, 9:26 am
I do believe that you have your POST and PUT mixed up. POST is used for creation and PUT is used for updating.