CMIS和WebDAV之间的主要技术区别是什么?
如果适用,CMIS 究竟比 WebDAV 改进了什么?
我不是在问采用率或实施数量,而是在问每个标准之间的技术差异。
没有简单的答案。
WebDAV 中的某些东西在 CMIS 中不可用(锁定、重定向、高级版本控制、命名空间操作,如 MOVE)。当然还有其他东西只能在 CMIS 中使用。两者都可以扩展为更好的匹配(因此从头开始而不是仅仅添加/分析 WebDAV 可能是一个坏主意)。
主要的真正区别在于 WebDAV 中的集合模型更具体(因为它通过 MOVE/COPY 操作公开了一个真实的层次结构),而在 CMIS 中(根据 AtomPub),客户端的控制较少。根据要求,这可能是优势或劣势。
WebDAV 是一个较旧的标准,完全基于 HTTP 规范。事实上,HTTP 被扩展为将其从只读变为读写。在 WebDAV 之前,HTTP 规范无法处理来回文件传输,因此为此目的对其进行了扩展。WebDAV 非常初级,只允许作者以文件浏览模式进行管理。出来的第一个 WebDAV 规范不包括版本控制功能。后来在规范的“Delta V”版本中,规范了完整的版本控制。虽然 WebDAV 非常流行(Microsoft 桌面、一些 Adobe 产品等),但大多数供应商只实施了早期的 WebDAV 规范。(即不是DeltaV)
另一方面,CMIS 是一个更加完整和丰富的规范。CMIS 基本上是一个基于 Web 服务的通用 API。CMIS 包括对扩展元数据、搜索、高级权限、版本控制功能等的支持,并真正进一步推进了组织各种存储库的公共管道层的概念。它确实是各种 ECM 供应商(如 Microsoft IBM、OpenText、ECM 等)的共同标准 API。
此时可以在 CMIS 上编写卷,但这是一些很大的不同。需要注意的是,在撰写本文时,CMIS 仍然不是 1.0 规范(几乎已经存在),而 WebDAV 已经存在了十多年。随着 CMIS 的发展,可能会出现相当大的变化。