阿不

潜水

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  212 随笔 :: 0 文章 :: 3078 评论 :: 107万 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

WebDav协议基于Http 1.1协议进行扩展,在包含原有的GET ,POST,HEAD等HTTP标准请求方法,增加了:PROPFIND,PROPPATCH,MKCOL,COPY,MOVE,LOCK,UNLOCK等一些新的请求方法,使应用程序可以直接对Web Server的文件进行读写。在协议定义中,还包括对文件进行锁定,解锁,版本控制等方法。

在IIS中,已经包含了对WebDav协议的支持,用户只需要启用WebDav扩展,即可以通过WebDav客户端(Windows资源管理器)等连接站点的文件服务,直接对站点上的文件进行操作。这种由IIS拖管的WebDav来达到对文件的操作,在目前可能并不会被很多人采用,因为在安全性方面得不到很好的保证。无法屏蔽某些不希望被用户控制的文件,无法程序干预等。

但是在WebDav作为一些标准的,开放的协议,我们完全可以通过这套协议,根据程序的需求来实现WebDav的请求响应来提供WebDav服务,利用标准的WebDav客户端方便用户进行网站内容的维护。

在Kooboo CMS中,有一种内容,叫二进制内容(Binary Content),其实就是文件内容。因为在Kooboo中,不管文本的结构化内容还是非文本的文件内容都被当成普通内容进行管理和维护。文件内容可以被文本内容引用,作为它的附件,也可以单独使用,比如做相册之类的东西。而文件内容的维护一般都非常简单,只需要上传文件即可,而在web界面上无法实现成批上传和拖拽上传。通过实现WebDav协议,我们就可以通过WebDav客户端来维护这些文件内容,提高用户体验。

从实现上,我们无需完全自己去开发一套WebDav框架,这里已经有了WebDav协议的开源实现:WebDAV.NET Server Framework 。在这套框架已经帮我们处理了协议底层请求,我们只需处理应用逻辑即可。

更多WebDav在Kooboo CMS中的运用,请参考文档:http://www.kooboo.com/documents/detail/WebDAV和Kooboo CMS源码实现。

相关链接:

http://baike.baidu.com/view/974023.htm?fr=ala0_1_1

http://www.webdav.org/specs/rfc4918.html

posted on   阿不  阅读(1660)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述
历史上的今天:
2008-04-10 Http环境下的保持连接方式
点击右上角即可分享
微信分享提示