HTTP of Future Past

3c9c4267bb4bf7e4cdbdb0d07f858eb7?s=47 BigBlueHat
September 27, 2014

HTTP of Future Past

Bringing back the greatness of HTTP/1.1 Beta...and other bits on pushing HTTP farther for fun.

3c9c4267bb4bf7e4cdbdb0d07f858eb7?s=128

BigBlueHat

September 27, 2014
Tweet

Transcript

  1. X-tend: HTTP of Future Past

  2. Ohai!

  3. Information Management: a proposal “VAGUE BUT EXCITING” – CIRCA 1989,

    1990 PDF
  4. “ ” distributed, collaborative, hypermedia information systems

  5. “ ” An intriguing possibility, given a large hypertext database

    with typed links, is that it allows some degree of automatic analysis.
  6. “ ” Most systems available today use a single database.

    …some things never change
  7. HTTP/1.1 Beta RFC 2068

  8. HTTP/1.1 Beta – RFC 2068  One year (1997) before

    RFC 2616 (1998)  Lots of good stuff  Much of it got removed  Due to lack of implementation…
  9. HTTP/1.1 Beta – RFC 2068 …gone, daddy gone…  Methods:

    PATCH LINK, UNLINK  Headers: Alternates, Content-Version, Derived-From, Link, URI, Public and Content-Base
  10. RELIFY RELIFY.COM

  11. LINK / UNLINK  LINK /html/rfc2068 Host: tools.ietf.org Link: <http://relify.com/>;

    rel="about"  HTTP/1.1 202 Accepted
  12. “ ” But what about spam!!1! - YOU…JUST A FEW

    SECONDS AGO
  13. From: byoung@bigbluehat  Not for “insecure…access protection” (fine)  How

    ‘bout Verification?!  “the request is being performed on behalf of the person given, who accepts responsibility for the method performed” – RFC 2616  Send (typical) “click to confirm” email
  14. LINK / UNLINK  LINK /html/rfc2068 Host: tools.ietf.org Link: <http://relify.com/>;

    rel="about" From: byoung@bigbluehat.com  HTTP/1.1 202 Accepted
  15. Web Linking – RFC 5988 Brought back the “Link:” header

    “This document specifies relation types for Web links, and defines a registry for them. It also defines the use of such links in HTTP headers with the Link header field.”
  16. RFC 5829  Link Relation Types for Simple Version Navigation

    between Web Resources version-history latest-version working-copy working-copy-of predecessor-version successor-version
  17. RFC 6573 - The Item and Collection Link Relations item

    collection
  18. UserInfo.me

  19. UserInfo.me  http://byoung@bigbluehat.com/  GET /  Host: bigbluehat.com 

    UserInfo: byoung  Content-Type: text/html
  20. UserInfo.me – profile page  http://byoung@bigbluehat.com/  GET / 

    Host: bigbluehat.com  UserInfo: byoung Content-Type: text/html
  21. UserInfo.me – WebFinger response  http://byoung@bigbluehat.com/  GET / 

    Host: bigbluehat.com  UserInfo: byoung Content-Type: application/jrd+json
  22. UserInfo.me – WebID response  http://byoung@bigbluehat.com/  GET / 

    Host: bigbluehat.com  UserInfo: byoung Content-Type: text/turtle
  23. UserInfo.me – photo  http://byoung@bigbluehat.com/  GET /  Host:

    bigbluehat.com  UserInfo: byoung Content-Type: image/jpeg
  24. UserInfo.me – redirect  http://byoung@bigbluehat.com/  GET /  Host:

    bigbluehat.com  UserInfo: byoung  HTTP/1.1 302 Found  Location: http://twitter.com/bigbluehat
  25. UserInfo.me – the Heretic Variant

  26. UserInfo.me – heretic variant  http://byoung@bigbluehat.com/  GET / 

    Host: bigbluehat.com Authorization: YnlvdW5nOg==  Content-Type: text/html
  27. UserInfo.me – try it! curl http://byoung@bigbluehat.com/ curl –H “Accept: text/turtle”

    http://byoung@bigbluehat.com/ curl –H “Accept: image/jpeg” http://byoung@bigbluehat.com/ > byoung.jpg
  28. Read Your RFCs, kids! THANKS!