WebDAV介绍

概述

    随着对 Internet 标准和网络互操作性的日益关注,作为 HTTP 1.1 的扩展,WebDAVWeb 分布式创作和版本控制)已经成为重要的 Web 通讯协议(有关详细信息,请参阅 IETF RFC 2616)。 WebDAV 规范(有关详细信息,请参阅 IETF RFC 2518)在 1999 年 2 月由 Internet 工程任务组 (IETF) 发布,这中间有 Microsoft 的巨大贡献,以及许多第三方供应商(如 NetscapeXeroxIBMNovell)的支持。

    由于 WebDAV 与可扩展标记语言 (XML) 固有的集成,因此它不仅非常依赖 XML,而且已经成为通过 Web 传送 XML 数据的绝佳方法。 但是,在完全了解这些技术所带来的好处之前,一定要先了解什么是 WebDAV,以及它在客户端/服务器体系结构中的用途。 

WebDAV的优势

    由于 Web 已经成为 Internet 的基础,因此 HTTP 1.1(超文本传送协议)被证实是用来传输数据的非常灵活的通用协议。 但是,HTTP 存在一些明显的缺点,从而限制了它作为综合的 Internet 通讯协议而被采用: 它非常适合用于查看的静态文档,但不能提供以足够复杂(以便向客户端提供丰富的创作功能)的方式来处理文档的方法。

    例如,当两个作者在未进行交流的情况下同时对一个文档进行更改时,就会出现“更新丢失”问题。 只有由最后一个作者完成、并将修改后的文档重新上载到服务器的修改才会保留下来,另一个作者进行的更改将丢失。

    IETF WebDAV 工作组的目标是,设计一个协议,它提供基于标准的论坛中任何分布式创作工具需要的功能。 当前的 WebDAV 规范 (IETF RFC 2518) 解决协作式创作工具的三个主要问题:

改写保护。HTTP 1.1 无法确保客户端可以保护资源,并且可以在其他客户端同时编辑它们的情况下进行更改。 使用 WebDAV,可以通过多种方式来锁定资源,以便让其他客户端知道您对所讨论的资源感兴趣,或者防止其他客户端访问该资源。

资源管理。HTTP 只能直接访问单个资源。 WebDAV 提供一种更有效地组织数据的方法。 WebDAV 引入了可包含资源集合(类似于文件系统文件夹)概念。 通过 WebDAV 进行的资源管理包括如下功能:创建、移动、复制和删除集合,以及集合中的资源或文件。

文档属性。不同类型的数据具有唯一的属性,这有助于描述数据。 例如,在电子邮件中,这些属性可能是发件人的姓名和接收邮件的时间。 在协作文档中,这些属性可能是文档原始作者的姓名和最后一个编辑者的姓名。 因为人们使用的文档类型各不相同,所以可能的属性类型列表也变得无限大。 XML 是 WebDAV 所需的一种可扩展通讯工具。

WebDAV 请求的格式

    HTTP 1.1(请参阅 IETF RFC 2068)提供一组可供客户端与服务器通讯的方法,并指定响应(从服务器返回发出请求的客户端)的格式。 WebDAV 完全采用此规范中的所有方法,扩展其中的一些方法,并引入了其他可提供所描述功能的方法。 WebDAV 中使用的方法包括:

OptionsHeadTrace。 主要由应用程序用来发现和跟踪服务器支持和网络行为。

Get。 检索文档。

PutPost。 将文档提交到服务器。

Delete。 销毁资源或集合。

Mkcol。 创建集合。

PropFindPropPatch。 针对资源和集合检索和设置属性。

CopyMove。 管理命名空间上下文中的集合和资源。

LockUnlock。 改写保护。

WebDAV 请求的一般结构遵循 HTTP 的格式并且由以下三个组件构成:

方法。 声明由客户端执行的方法(上面描述的方法)。

标头。 描述有关如何完成此任务的指令。

主体(可选)。 定义用在该指令或其他指令中的数据,用以描述如何完成此方法。

在主体组件中,XML 成为整个 WebDAV 结构中的关键元素。

 
阅读更多
想对作者说点什么? 我来说一句

支持Webdav的客户端AnyClient

2009年05月29日 2.26MB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭