Over the years, a number of different web-based service technologies have been developed, including XML-RPC, SOAP and REST. These RESTful services are easy to use and consume from the client side, and have a much lighter overhead for communicating and exchanging information. From a server side perspective, they can be more difficult to implement and build because of the state-less nature of the service, while generally being easier to map to existing functions, methods and internal structures.
Follow along in this RESTful roundup for a tour through some of our most popular blog posts on the topic, as well as popular resources in Safari Books Online.
- System Design Using RESTful Practices and Embracing State
Web applications and systems are hard to write. They start off simple, but as time goes on and features are added or changed, they can become complicated. Adhering to RESTful practices can help simplify those systems by focusing on the state of your applications. Read more…
- Ideas For Writing a User Authorization System RESTfully
Writing user authorization systems RESTfully can be tricky for any newcomer to REST. This blog post is meant to provide some ideas on how you can do this in a RESTful manner. Read more…
- REST from a Client Perspective
Many developers are exploring how to build good Web APIs. The most common current approach is to build APIs that conform to the REST architecture. Read more…
- Probe Web Resources Efficiently with HEAD and OPTIONS in REST
Few Web APIs these days don’t strive in some way to be RESTful. When designing an API, developers often focus on the CRUD (Create, Read, Update and Delete) operations that apply to their API resources, and how these map onto the four main HTTP request methods (PUT, GET, POST, DELETE). Read more…
- Instrumenting APIs with Links in REST
REST is now the most common approach used for designing Web APIs. A well-designed REST API is based upon media types that define the message formats used in client-server exchanges. See REST APIs in the REST API Design Rulebook for more on this topic. A media type will document both the structure of a valid message and the hypermedia “controls” used to interact with resources. Read more…
- Using Hypermedia in Your RESTful API Design
In simple terms, hypermedia is how people consuming your services discover your system. One of the great things about hypermedia is that it’s dynamic – so the links you provide through hypermedia can change depending upon the state of the resource your system is providing at runtime (this contrasts with traditional SOA where links/endpoints are static). Read more…
Resources in Safari Books Online
Here are some more resources in Safari Books Online to help you get started with programming with REST.
|The basic rules of REST APIs – “many nouns, few verbs, stick with HTTP” – seem easy, but that simplicity and power require discipline to work smoothly.REST API Design Rulebook provides the next steps for implementing complex projects on simple and extensible foundations.|
|RESTful Web Services applies the REST design philosophy to real web services. It sets down the best practices you need to make your design a success, and the techniques you need to turn your design into working code. You can harness the power of the Web for programmable applications: you just have to work with the Web instead of against it.|
|Read RESTful Web Services Cookbook provides you with more than 50 recipes to help you solve common problems you’re likely to face when designing and developing RESTful web services. These recipes are applicable no matter what programming language you use. Just browse through the book to find the answers you need. The recipes are illustrated using HTTP requests and responses, XML, JSON, Atom snippets, sequence diagrams of client-server interactions, and resource models.|
|REST in Practice offers a down-to-earth explanation of REST, with techniques and examples that show you how to design and implement integration solutions using the REST architectural style.|
The blog posts and books listed in this roundup will help you master the creation of web services using REST.