From the eBook - Second edition.
Copyright; Table of Contents; Preface; Conventions Used in This Book; Using Code Examples; Safari® Books Online; How to Contact Us; Acknowledgments; Chapter 1. HTTP; Clients and Servers; Making HTTP Requests; Command-Line HTTP; Browser Tools; Doing HTTP with PHP; Chapter 2. HTTP Verbs; Serving GET Requests; Making GET Requests; Handling POST Requests; Making POST Requests; Using Other HTTP Verbs; Chapter 3. Headers; Request and Response Headers; Identify Clients with User-Agent; Headers for Content Negotiation; Parsing an Accept Header; Demonstrating Accept Headers with cURL.
Securing Requests with the Authorization HeaderHTTP Basic Authentication; HTTP Digest Authentication; OAuth; Caching Headers; Custom Headers; Chapter 4. Cookies; Cookie Mechanics; Reading and Writing Cookies; Making Requests with Cookies; Cookies and APIs; Chapter 5. JSON; When to Choose JSON; Handling JSON with PHP; The JSONSerializable Interface; Consuming JSON APIs; Chapter 6. XML; XML in PHP; Creating XML; Consuming XML APIs; Parsing XML; Flickr's XML API; Chapter 7. RPC and SOAP Services; RPC; SOAP; WSDL; PHP SOAP Client; PHP SOAP Server; Generating a WSDL File from PHP.
PHP Client and Server with WSDLChapter 8. REST; RESTful URLs; Resource Structure and Hypermedia; Build the Basic RESTful Server; Example Project: The Wishlist; Create Resources with POST; Fetch a Resource or Collection with GET; Update a Resource with PUT; DELETE a Resource; RESTful Versus Useful; Chapter 9. Webhooks; GitHub's Webhooks; Publishing Your Own Webhooks; Chapter 10. HTTP Tools; Easy Command-Line JSON; Graphical cURL Alternatives; Inspect HTTP Traffic with Wireshark; Tunnel Local Traffic Remotely with ngrok; Inspect, Edit, Repeat, and Share Requests; Proxying PHP Applications.
Proxy Settings for GuzzleProxy Settings for HTTP Stream Handling; Finding the Tool for the Job; Chapter 11. Maintainable Web Services; Sample API Application; Consistent Output Formats; Debug Output as a Tool; Effective Logging Techniques; Error Logging in PHP Applications with Monolog; Error Handling with PHP Exceptions; Chapter 12. Making Service Design Decisions; Service Type Decisions; How to Present API Data; Hypermedia for Easy API Navigation; Nested Data or Many Round Trips; Data Formats and Media Types; Customizable Experiences; Pick Your Defaults.
Chapter 13. Building a Robust ServiceConsistency Is Key; Consistent and Meaningful Naming; Common Validation Rules; Predictable Structures; Error Handling in APIs; Meaningful Error Messages; What to Do When You See Errors; Making Design Decisions for Robustness; Chapter 14. Publishing Your API; Documentation Is Key; Overview Documentation; Generated API Documentation; Interactive Documentation; API Description Languages; Automated Testing Tools; Tutorials and the Wider Ecosystem; Appendix A.A Guide to Common Status Codes; Appendix B. Common HTTP Headers; Index; About the Author.
Making service design decisions
Building a robust service
A guide to common status codes