Facial. PUT or POST: The REST of the Story « Open Sourcery. Web service designers have tried for some time now to correlate CRUD (Create, Retrieve, Update and Delete) semantics with the Representational State Transfer (REST) verbs defined by the HTTP specification–GET, PUT, POST, DELETE, HEAD, etc.
So often, developers will try to correlate these two concepts–CRUD and REST–using a one-to-one mapping of verbs from the two spaces, like this: Create = PUTRetrieve = GETUpdate = POSTDelete = DELETE “How to Create a REST Protocol” is an example of a very well-written article about REST, but which makes this faulty assumption. (In fairness to the author, he may well have merely “simplified REST for the masses”, as his article doesn’t specifically state that this mapping is the ONLY valid mapping. And indeed, he makes the statement that the reader should not assume the mapping indicates a direct mapping to SQL operations.) But such a trivial mapping is inaccurate at best. The crux of the issue comes down to a concept known as idempotency. Analysis. The Amazing Blog : Your Web Service Might Not Be RESTful If…
REST Web Services REST Security. The Design of the Twitter REST API. The REST API for Twitter is very simple to learn and implement.
And it has a comprehensive documentation. Here is some selected operations to just to show its design. Note that here userid should be replaced with a valid twitter user id or user name and the format should be changed to the required output format (.xml, json, rss, atom are possible output formats) After having look at this API, the first question I had was whether this API is actually RESTful. In RESTful design we expect to map a resource to a URL and do CRUD (Create, Read, Update and Delete) operations using request with different Http Verbs (POST, GET, PUT, DELETE) with that same URL. So if ever the API is designed following the above theory it would have been like this. So I think although Twitter API is really nice and easy, it is not really a RESTful API.
What is REST, anyway? - The Official Programmer's Heaven Blog. Ramblings — Building a RESTful Ruby on Rails Application from the Ground up with a Site-wide Layout. In the following introductory article, I will build a stripped-down application to store a basic social graph for a person (a very fashionable subject nowadays). The steps to building the application will illustrate how to create a Rails application, configure it to connect to a MySQL database, generate resource scaffolding, use database migrations, and associate models. It will serve as a basis for later articles to illustrate more complex aspects of Rails development.
Liked it? The S stands for Simple. There has been a long running debate in the Application Platform Services Group here at Burton Group between the REST people on one side and the SOAP people on the other.
For the most part it mirrors the external debate. In one recent exchange, while discussing the complexity of SOAP and the web services framework, the SOAP side said, “Before all of the WS-* stuff, SOAP was actually simple. That’s what the ‘S’ stood for.” And now a history lesson. It’s the year 2000, a harried developer has a problem Developer: So, my boss was playing golf this weekend, and now I have to ‘quote, unquote’ SOAP-enable the enterprise, but I don’t know what SOAP is. SOAP Guy: Sure thing. Dev: So it’s simple? SG: Simple as Sunday, my friend. Dev: Okay, lay it on me. SG: Well, just like it says in the name, SOAP is used for accessing remote objects. Dev: Like CORBA? SG: Exactly like CORBA, only simpler. Dev: I’m intrigued. SG: Sure thing. Dev: So this is all about RPCs? SG: Absolutely. Dev: Endpoint? SG: Don’t know.
Google Base Data API vs. Astoria: Two Approaches to SQL-like Queries in a RESTful Protocol. Debate: Does REST Need a Description Language?