Buying Options
RESTful Web Services
Print $39.99
Add to Cart
Print+Ebook $43.99
Add to Cart
Ebook $31.99
Add to Cart
Safari Books Online
Add to Cart
What is this?
Print £30.99
Add to Cart
What is this?
Description

You've built web sites that can be used by humans. But can you also build web sites that are usable by machines? That's where the future lies, and that's what this book shows you how to do. Today's web service technologies have lost sight of the simplicity that made the Web successful. This book explains how to put the "Web" back into web services with REST, the architectural style that drives the Web.

Full Description
Table of Contents
  1. Chapter 1 The Programmable Web and Its Inhabitants

    1. Kinds of Things on the Programmable Web

    2. HTTP: Documents in Envelopes

    3. Method Information

    4. Scoping Information

    5. The Competing Architectures

    6. Technologies on the Programmable Web

    7. Leftover Terminology

  2. Chapter 2 Writing Web Service Clients

    1. Web Services Are Web Sites

    2. del.icio.us: The Sample Application

    3. Making the Request: HTTP Libraries

    4. Processing the Response: XML Parsers

    5. JSON Parsers: Handling Serialized Data

    6. Clients Made Easy with WADL

  3. Chapter 3 What Makes RESTful Services Different?

    1. Introducing the Simple Storage Service

    2. Object-Oriented Design of S3

    3. Resources

    4. HTTP Response Codes

    5. An S3 Client

    6. Request Signing and Access Control

    7. Using the S3 Client Library

    8. Clients Made Transparent with ActiveResource

    9. Parting Words

  4. Chapter 4 The Resource-Oriented Architecture

    1. Resource-Oriented What Now?

    2. What’s a Resource?

    3. URIs

    4. Addressability

    5. Statelessness

    6. Representations

    7. Links and Connectedness

    8. The Uniform Interface

    9. That’s It!

  5. Chapter 5 Designing Read-Only Resource-Oriented Services

    1. Resource Design

    2. Turning Requirements Into Read-Only Resources

    3. Figure Out the Data Set

    4. Split the Data Set into Resources

    5. Name the Resources

    6. Design Your Representations

    7. Link the Resources to Each Other

    8. The HTTP Response

    9. Conclusion

  6. Chapter 6 Designing Read/Write Resource-Oriented Services

    1. User Accounts as Resources

    2. Custom Places

    3. A Look Back at the Map Service

  7. Chapter 7 A Service Implementation

    1. A Social Bookmarking Web Service

    2. Figuring Out the Data Set

    3. Resource Design

    4. Design the Representation(s) Accepted from the Client

    5. Design the Representation(s) Served to the Client

    6. Connect Resources to Each Other

    7. What’s Supposed to Happen?

    8. What Might Go Wrong?

    9. Controller Code

    10. Model Code

    11. What Does the Client Need to Know?

  8. Chapter 8 REST and ROA Best Practices

    1. Resource-Oriented Basics

    2. The Generic ROA Procedure

    3. Addressability

    4. State and Statelessness

    5. Connectedness

    6. The Uniform Interface

    7. This Stuff Matters

    8. Resource Design

    9. URI Design

    10. Outgoing Representations

    11. Incoming Representations

    12. Service Versioning

    13. Permanent URIs Versus Readable URIs

    14. Standard Features of HTTP

    15. Faking PUT and DELETE

    16. The Trouble with Cookies

    17. Why Should a User Trust the HTTP Client?

  9. Chapter 9 The Building Blocks of Services

    1. Representation Formats

    2. Prepackaged Control Flows

    3. Hypermedia Technologies

  10. Chapter 10 The Resource-Oriented Architecture Versus Big Web Services

    1. What Problems Are Big Web Services Trying to Solve?

    2. SOAP

    3. WSDL

    4. UDDI

    5. Security

    6. Reliable Messaging

    7. Transactions

    8. BPEL, ESB, and SOA

    9. Conclusion

  11. Chapter 11 Ajax Applications as REST Clients

    1. From AJAX to Ajax

    2. The Ajax Architecture

    3. A del.icio.us Example

    4. The Advantages of Ajax

    5. The Disadvantages of Ajax

    6. REST Goes Better

    7. Making the Request

    8. Handling the Response

    9. JSON

    10. Don’t Bogart the Benefits of REST

    11. Cross-Browser Issues and Ajax Libraries

    12. Subverting the Browser Security Model

  12. Chapter 12 Frameworks for RESTful Services

    1. Ruby on Rails

    2. Restlet

    3. Django

  1. Appendix Some Resources for REST and Some RESTful Resources

    1. Standards and Guides

    2. Services You Can Use

  2. Appendix The HTTP Response Code Top 42

    1. Three to Seven Status Codes: The Bare Minimum

    2. 1xx: Meta

    3. 2xx: Success

    4. 3xx: Redirection

    5. 4xx: Client-Side Error

    6. 5xx: Server-Side Error

  3. Appendix The HTTP Header Top Infinity

    1. Standard Headers

    2. Nonstandard Headers

  4. Colophon

View Full Table of Contents
Product Details
Title:
RESTful Web Services
By:
Leonard Richardson, Sam Ruby
Publisher:
O'Reilly Media
Formats:
  • Print
  • Ebook
  • Safari Books Online
Print Release:
May 2007
Ebook Release:
December 2008
Pages:
448
Print ISBN:
978-0-596-52926-0
| ISBN 10:
0-596-52926-0
Ebook ISBN:
978-0-596-15835-4
| ISBN 10:
0-596-15835-1
Customer Reviews
About the Authors
  1. Leonard Richardson

    Leonard Richardson (http://www.crummy.com/) is the author of the Ruby Cookbook (O'Reilly) and of several open source libraries, including Beautiful Soup. A California native, he currently lives in New York.

    View Leonard Richardson's full profile page.

  2. Sam Ruby

    Sam Ruby is a prominent software developer who has made significant contributions to the many of the Apache Software Foundation's open source projects, and to the standardization of web feeds via his involvement with the Atom web feed standard and the popular Feed Validator web service. He currently holds a Senior Technical Staff Member position in the Emerging Technologies Group of IBM. He resides in Raleigh, North Carolina.

    View Sam Ruby's full profile page.

Colophon

The animal on the cover of RESTful Web Services is a vulpine phalanger (P. vulpina). Phalanger is the general term given to animals of the Phalangeridae family, which includes possums and cuscuses. (One should not confuse the Australian possum with the American opossum; they are both marsupials, but very different.) The term phalanger is derived from the Greek word phalanges, which means finger or toe bone. The omnivorous phalanger uses its claw-fingered paws (with opposable thumbs) to climb, hunt, and live in trees. Phalangers are found in the forests of Australia, New Zealand, Tasmania, and some Indonesian islands. Like the most famous marsupial, the kangaroo, female phalangers carry their young around in a front pouch after birth.

Phalanger is also the name of a PHP complier project for the .NET framework.

  • Book cover of RESTful Web Services