

Indlæser... RESTful Web Servicesaf Leonard Richardson, Sam Ruby
![]() Ingen Der er ingen diskussionstråde på Snak om denne bog. After creating a significant number of web services, I've come to appreciate standards that more closely resemble the web. Any time I have to use XML-RPC, I have to use libraries that are (at best) not totally standardized. Unlike HTTP, HTML, and JSON which are much closer to a working consensus. The interesting part is the beginning clearly defining what's exactly a RESTful services. Some good points expressed regarding the simplicity of HTTP (the genius part of HTTP). The rest of the book is for the Ruby fan... Interesting, but sloppy. ~100 pages in and it seems that every other page has an error or typo or contradiction or some other oddity. I tend to trust the authors to get the essential concepts right, but the editing and tech review was so half-assed that the results are distracting. ingen anmeldelser | tilføj en anmeldelse
"Every developer working with the Web needs to read this book."-- David Heinemeier Hansson, creator of the Rails framework"RESTful Web Services finally provides a practical roadmap for constructing services that embrace the Web, instead of trying to route around it."-- Adam Trachtenberg, PHP author and EBay Web Services EvangelistYou'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 RESTful Web Services shows you how to do. The World Wide Web is the most popular distributed application in history, and Web services and mashups have turned it into a powerful distributed computing platform. But today's web service technologies have lost sight of the simplicity that made the Web successful. They don't work like the Web, and they're missing out on its advantages.This book puts the "Web" back into web services. It shows how you can connect to the programmable web with the technologies you already use every day. The key is REST, the architectural style that drives the Web. This book: Emphasizes the power of basic Web technologies -- the HTTP application protocol, the URI naming standard, and the XML markup language Introduces the Resource-Oriented Architecture (ROA), a common-sense set of rules for designing RESTful web services Shows how a RESTful design is simpler, more versatile, and more scalable than a design based on Remote Procedure Calls (RPC) Includes real-world examples of RESTful web services, like Amazon's Simple Storage Service and the Atom Publishing Protocol Discusses web service clients for popular programming languages Shows how to implement RESTful services in three popular frameworks -- Ruby on Rails, Restlet (for Java), and Django (for Python) Focuses on practical issues: how to design and implement RESTful web services and clients This is the first book that 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. This book shows you how. No library descriptions found. |
![]() Populære omslagVurderingGennemsnit:![]()
|
Richardson & Ruby "coin" the term Resource Oriented Architectures, by pointing out that it is actually a term previous used by a 2004 paper from James Snell, but they don't like the way he defined it so they are going to abscond with it and rework it.
They give very little insight into the possible benefits of their style of RESTful services, instead they spend a lot of time deriding "Big Style" web services, RESTful-RPC hybids, and other non-pure systems.
What I found really enlightening is how much the authors struggled to find successful RESTful examples. Everything from flickr, to Google, to del.icio.us, to Amazon have been doing it wrong and at best, the authors explain, are only half-assing it with RESTful-RPC.
All that tells me is that either the authors are the smartest guys in the world and can see what some of the web's best engineers cannot; or, REST simply isn't that compelling.
The book also simply is a failure at explaining what REST is and isn't. They make confusing and arbitrary delineations between one design decisions being RESTful and another not.
For example:
http://www.somesite.com/rest-service?method=search&q=penguins
and
http://www.somesite.com/rest-services/search?q=penguins
The first one, not RESTful, second one yes. The authors explain that the method should be the HTTP method: GET, PUT, POST, DELETE, etc.
The second URI invokes GET on the resource /search and passes some "scoping" information as "q=penguins." So for the search we can a scope of penguins.
I say that the first is the same. You invoke GET on /rest-service and pass a scope of ?method=search&q=penguins. At some point you are just going to get into semantics, especially once you get past trivial search examples.
They do similar fudging with RESTful services need to be stateless., but they use examples that must have some idea of who is doing them. If you pass the sessionID as a URI param, ok, as a cookie, you are not RESTful. Which makes sense in terms of caching servers, but on write operations, why do you want to cache?
The whole book is about proselytizing REST, usually by denouncing the false religions. It does not offer the reader a new set of skills and an honest discussion of what REST is good for and when should look elsewhere. There is not good discussion of the limitations of REST.
What do I do when the data I need to pass in exceeds the 1024 limit of a URL? What if I would want to create a set of simple atomic methods, but I have clients that would like to make coarse grain calls by bundling many requests into one call? What if I would like to allow clients to pipe these bundles request together. And what is the difference between the buzz phrase "Javascript on Demand (JoD)" and all that other JS that I just fetched from the web. (