With this concise book, you’ll learn the art of building hypermedia APIs that don’t simply run on the Web, but that actually exist in the Web. You’ll start with the general principles and technologies behind this architectural approach, and then dive hands-on into three fully-functional API examples.
Too many APIs rely on concepts rooted in desktop and local area network patterns that don’t scale well—costly solutions that are difficult to maintain over time. This book shows system architects and web developers how to design and implement human- and machine-readable web services that remain stable and flexible as they scale.
Learn the H-Factors for representing application metadata across all media types and formats
Understand the four basic design elements for authoring hypermedia types
Convert a simple read-only XML-based media type into a successful API design
Examine the challenges and advantages of designing a hypermedia type with JSON
Use HTML5’s rich set of hypermedia controls in the API design process
Learn the details of documenting, publishing, and registering media type designs and link-relation types
Chapter 1 Understanding Hypermedia
HTTP, MIME, and Hypermedia
Programming the Web with Hypermedia APIs
Identifying Hypermedia : H-Factors
Hypermedia Design Elements
Summary
What’s Next?
Chapter 2 XML Hypermedia
Scenario
Designing the Maze XML Media Type
Sample Data
The Server Code
The Client Code
Summary
Chapter 3 JSON Hypermedia
Scenario
Designing the Collection+JSON Media-Type
The Tasks Application Semantics
Sample Data
The Server Code
The Client Code
Summary
Chapter 4 HTML5 Hypermedia
Scenario
Designing the Microblog Media Type
Sample Data
The Server Code
The Client Code
Summary
Chapter 5 Documenting Hypermedia
Requirements, Compliance, and RFC 2119
Documenting Media Type Designs
Extending and Versioning Media Types
Registering Media Types and Link Relations
Design and Implementation Tips
Appendix Afterword
Appendix References
Appendix Additional Reading
Books
Other
Appendix Maze+XML Media Type
Elements
Attributes
Link Relations
Data Types
Extensibility
Appendix Collection+JSON Media Type
General Concepts
Objects
Arrays
Properties
Link Relations
Data Types
Extensibility
Appendix Microblogging HTML Semantic Profile
General Concepts
Semantic Profile
Appendix IANA Media Type Registration Document
Appendix IETF Link Relations Internet Draft
Appendix Source Code, Software, and Installation Notes
An internationally known author and lecturer, Mike Amundsen travels throughout the United States and Europe consulting and speaking on a wide range of topics including distributed network architecture, Web application development, Cloud computing, and other subjects. His recent work focuses on the role hypermedia plays in creating and maintaining applications that can successfully evolve over time. He has more than a dozen books to his credit and recently contributed to the book "RESTful Web Services Cookbook" (by Subbu Allamaraju). When he is not working, Mike enjoys spending time with his family in Kentucky, USA.
Comments about oreilly Building Hypermedia APIs with HTML5 and Node:
I think this book accomplishes the author's goals in that it presents some very worthwhile ideas about hypermedia APIs to a broader audience. The content, especially with regard to the most common type of API today,HTTP+JSON, is cutting edge stuff. I fully expect a lot of the ideas in this book to start showing up in more places. They are important ideas that will improve the web long term by promoting links/edges in places where links and edges are not yet common (e.g. HTTP+JSON RESTful APIs)
With that in mind, this book is more academic than practical and can get overly wordy in places. If you have already designed an API, this is a great book to read. If you have not and your interest is HTTP+JSON, you may be better off learning by example from some well designed APIs like Stripe's API.
While the ideas are great, this book really falls short on the code. The source code used in the book is supposedly on the author's site, but I could not not find it anywhere. TBH, in this day and age, every book should have a github repo that readers can fork/clone. There is no excuse for not having this these days. This is the second book from O'Reilly where source code and repository issues spoilt the book. O'Reilly really should have a technical editor go through and make sure all code is available and executable before the book is published. A Github repo would make it very easy to provide the code in a way where the community can be leveraged to solve problems before printing.
On top of not having code easy to get to, I suspect that several of the examples may actually be pseudo code masquerading as executable code instead of real executable code. The code communicates the ideas, but I'm almost certain they'd result in nextTick() errors.
If you are an intermediate to advanced practitioner in API design and want to know where APIs are probably headed, pick this book up. If you are new to APIs or looking for something practical today, start elsewhere.
1/29/2012
(1 of 2 customers found this review helpful)
3.0
Good information but poorly presented
By IslandGirl
from Seattle, WA
About Me Developer
Pros
Interesting ideas
Cons
Difficult to understand
Poorly presented
Too many errors
Best Uses
Expert
Reference not learning
Comments about oreilly Building Hypermedia APIs with HTML5 and Node:
I think this book contains some good information, however it is presented poorly. The reader should be an expert in web technologies, as the examples do not have detailed explanations.
The chapters that present the built-out examples read more like manuals than a book. If you have a specific interest in the types of examples the author is presenting and are already an expert in HTML, JSON or XML and Node, then this may be helpful. However, if you are intermediate or new to these technologies you will be lost quickly.
1/24/2012
(2 of 2 customers found this review helpful)
5.0
Great at explaining hypermedia APIs
By Hypermedia Reviewer
from Europe
About Me Developer, Sys Admin
Pros
Concise
Easy to understand
Helpful examples
Well-written
Cons
Best Uses
Expert
Intermediate
Novice
Student
Comments about oreilly Building Hypermedia APIs with HTML5 and Node:
This is a great book for learning how to design and implement Hypermedia APIs regardless of what technologies one chooses to use. The examples use Node.js and CouchDB but that is not the focus of the book; the title is a bit unfortunate in this respect.
Regardless of what server-side and client-side technology you use, read this book if you want to design and implement discoverable APIs (RESTful or not).
Also, it is worth checking this presentation: http://oredev.org/2010/sessions/hypermedia-apis