Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ReSTful web services via RFC-2616

ReSTful web services via RFC-2616

Developing ReST web services with RFC-2616 and understanding the ecosystem of standards that support it.

Robert Allen

June 12, 2012
Tweet

More Decks by Robert Allen

Other Decks in Programming

Transcript

  1. PROJECT DATE CLIENT 2012-06-12 ROBERT ALLEN / @ZIRCOTE RESTFUL WEB

    SERVICES VIA RFC-2616 API-CRAFT CHICAGO MEETUP Text SSID: IFBYPHONE_GUEST PASSWD: IFBYPHONE Tuesday, June 12, 12
  2. XML-RPC Invented 1998 Patented in 2006 Four times the bytes

    as xml Effectively ReST in practice Tuesday, June 12, 12
  3. It’s not... a standard a requirement always pretty always sane

    agreed upon by more than 2 people in a room of 20. Tuesday, June 12, 12
  4. It is... an architectural guideline very flexible or rigid as

    simple or complex as you make it a living technology the culmination of previous works into a single suggested tool chest. Tuesday, June 12, 12
  5. Roy Thomas Fielding. Dissertation: “Architectural Styles and the Design of

    Network- based Software Architectures” Principal Author of RFC-2608, RFC-2616, RFC-2396, RFC-1808, RFC-2145 and RFC-1945 “Life is a distributed object system. However, communication among humans is a distributed hypermedia system, where the minds intellect, the voice +gestures, eyes+ears, and imagination are all components. -- Roy T. Fielding 1998 Tuesday, June 12, 12
  6. RFC-1808 (June 1995) Relative URL RFC-1945 (May 1996) HTTP 1.0

    RFC-2068 (January 1997) HTTP 1.1 RFC-2145 (May 1997) HTTP Version Numbers RFC-2396 (August 1998) Uniform Resource Identifiers RFC-2616 (June 1999) HTTP 1.1 Architectural Styles and the Design of Network-based Software Architectures. (2000) Tuesday, June 12, 12
  7. always sending a 200 regardless of state sending E-Tags but

    not using them assignment of errors to incorrect status advertising Content-Negotiation but failing to honor it. Tuesday, June 12, 12
  8. Other Status Code Considerations Not all user agents are friendly.

    Don’t be an unfriendly agent. not all 200s are created equal. Tuesday, June 12, 12