Web-Based Distributed Authoring and Versioning (Webdav) : Mike Gartrell November 16, 2006
Web-Based Distributed Authoring and Versioning (Webdav) : Mike Gartrell November 16, 2006
Web-Based Distributed Authoring and Versioning (Webdav) : Mike Gartrell November 16, 2006
Mike Gartrell
November 16, 2006
Agenda
WebDAV goals
Functionality
Concepts
Operations
WebDAV operation examples
Demo
Is WebDAV RESTful?
Goals (1 of 2)
Resources
Properties
Collections
Locks
WebDAV Concepts: Resources
Create the
http://www.server.org/webdisc/xfiles/ collection:
– Sample request:
MKCOL /webdisc/xfiles/ HTTP/1.1
Host: www.server.org
– Sample response:
HTTP/1.1 201 Created
WebDAV Operation Examples:
COPY
– Sample response:
HTTP/1.1 204 No Content
WebDAV Operation Examples:
MOVE
Move the resource
http://www.ics.uci.edu/~fielding/index.html to the
location
http://www.ics.uci.edu/users/f/fielding/index.html (there
is initially nothing at the destination resource):
– Sample request:
MOVE /~fielding/index.html HTTP/1.1
Host: www.ics.uci.edu
Destination: http://www.ics.uci.edu/users/f/fielding/index.html
– Sample response:
HTTP/1.1 201 Created
Location: http://www.ics.uci.edu/users/f/fielding/index.html
WebDAV Operation Examples:
LOCK (1 of 2)
Create an exclusive write lock on the resource
http://webdav.sb.aol.com/workspace/webdav/proposal.
doc
– Sample request:
LOCK /workspace/webdav/proposal.doc HTTP/1.1
Host: webdav.sb.aol.com Timeout: Infinite, Second-4100000000
Content-Type: text/xml; charset="utf-8“
Content-Length: xxxx
Authorization: Digest username="ejw", realm="ejw@webdav.sb.aol.com",
nonce="...", uri="/workspace/webdav/proposal.doc", response="...",
opaque="...“
– Sample response:
HTTP/1.1 204 No Content
Sources
RFC 2518: HTTP Extensions for Distributed Authoring
– WebDAV (http://webdav.org/specs/rfc2518.html)
WebDAV article on Wikipedia
(http://en.wikipedia.org/wiki/WebDAV)
DAV FAQ (http://webdav.org/other/faq.html)
Some WebDAV extensions (not discussed in this
presentation):
– RFC 3253: Versioning Extensions to WebDAV (DeltaV;
http://www.webdav.org/specs/rfc3253.html)
– RFC 3744: WebDAV Access Control Protocol
(http://www.webdav.org/specs/rfc3744.html)
Demo