日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

学习WebDav

發布時間:2023/12/8 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 学习WebDav 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
  • 前言
  • 初識WebDav
  • 有哪些支持webdav的網盤?
  • WebDAV的特性和優勢
  • 服務端的搭建
  • 調用WebDav接口
    • PROPFIND方法
    • PROPPATCH方法
    • MKCOL方法
    • PUT方法
    • GET方法
    • DELETE方法
    • COPY方法
    • MOVE方法
    • LOCK和UNLOCK方法
  • 總結

前言

????在之前一篇文章【keepass+堅果云管理我的密碼】中我使用了堅果云的WebDav服務來讓我的KeePass實現多平臺和設備共享數據庫文件。然后我就想學一學WebDav是什么,有什么用,以及如何使用。在這之前我也用過相關網絡存儲功能的服務,用來保存我定時打包的備份文件,當時考慮用百度網盤這類網盤工具,但是API太難用了,授權啥的也很麻煩,而且還需要創建應用,而我只想簡單的上傳和下載一下我的文件而已。當時的解決方案是使用【gdrive】命令行工具,感覺雖然略微復雜,但仍然比百度網盤簡單(PS:別問我為啥用谷歌產品,因為服務器在墻外)。但這次用堅果云的WebDav讓我看到了更簡單的上傳下載網盤文件的方案,我甚至都不用安裝額外的工具,只使用curl命令行就能實現文件上傳下載到網盤的功能,簡直牛逼plus啊。下面就展示我學習WebDav的記錄吧。

初識WebDav

????放上【WebDAV官網】,上面關于WebDAV的介紹:簡而言之:WebDAV代表“基于Web的分布式創作和版本控制”。它是HTTP協議的一組擴展,允許用戶協作編輯和管理遠程web服務器上的文件。我理解的WebDav其實就是一個http請求而已,只是拿來做的事情是管理服務上的文件。不過呢,通過一些特殊的規則讓服務器對特殊的http請求進行相應的邏輯處理,使得管理服務器文件更方便且功能更豐富。注意:認證這塊確實比較簡陋,用Basic Auth方式認證,比較容易被攻擊。所以我一般都會為文件進行加密,或者用別的方案保證文件傳輸的安全性,比如KeePass使用key文件,即使數據庫文件被人盜用也打不開。

有哪些支持webdav的網盤?

國外網盤:Box、Dropbox、teracloud、yandex、TransIP國內網盤:堅果云、城通網盤私有云:OwnCloud、Seafile 、群暉目前國內最好用的支持webdav:堅果云

當然支持WebDav協議的應用大家可以自行百度額,像我使用的KeePass就可以使用WebDav。好像WPS也支持,不過沒試過。這里是堅果云幫助里面介紹相關應用使用WebDav【點擊跳轉】

WebDAV的特性和優勢

  • 支持創建、修改、復制、移動、移除、查詢、列舉文件
  • 文件鎖
  • 版本控制
  • 支持修改文件屬性
  • 安全完善的身份驗證機制
  • 支持https加密
  • 支持proxy
  • 客戶端緩存
  • 方便的客戶端工具:和局域網中的文件共享一樣簡單使用。

對比ftp協議,身份驗證、加密、支持proxy、客戶端緩存都是webdav的優勢。在http傳輸上,ftp一個文件需要建立一個新連接;而webdav只要一個tcp連接,傳輸更高效。

服務端的搭建

????由于我只想用堅果云的服務,不想自己搭建服務器,所以沒有去了解,不過Nginx官網有個配置WebDav的方式【點擊跳轉】,大家有興趣可以去自己試試看。網上也有很多WebDav的服務器,我還在GitHub上搜索WebDav,能搜到很多服務器的代碼,有興趣可以自己找找看吧。

調用WebDav接口

????官方關于WebDav的介紹【點擊跳轉】,安排的明明白白,雖然我英語比較差,但我翻譯軟件玩的賊溜,還是勉強能看懂的。注意,下面的username為堅果云的賬號,password為堅果云的應用密碼,不是登錄密碼額,詳情看堅果云的幫助文檔吧。

PROPFIND方法

PROPFIND方法檢索在由請求URI標識的資源上定義的屬性,一般這個請求用來查看路徑下的目錄和文件,結果會有這些文件的名稱和屬性等。

curl --user "username:password" --request PROPFIND https://dav.jianguoyun.com/dav/

PROPPATCH方法

PROPPATCH方法處理請求正文中指定的指令,以設置和/或刪除在由請求URI標識的資源上定義的屬性。

curl --user "username:password" --request PROPPATCH https://dav.jianguoyun.com/dav/test.txt

MKCOL方法

MKCOL方法是創建目錄。

curl --user "username:password" --request MKCOL https://dav.jianguoyun.com/dav/test

PUT方法

PUT方法用于上傳文件。

curl --user "username:password" --request PUT https://dav.jianguoyun.com/dav/test/test.sql --data "body" 上面命令執行后,去查看文件內容會變為"body"curl --user "username:password" --request PUT https://dav.jianguoyun.com/dav/test/test.sql --data @C:\body.txt 上面命令執行后,去查看文件內容會變為"C:\body.txt"的文件內容

GET方法

GET方法用于下載文件,下面命令就能方便的下載文件。

curl --user "username:password" --request GET https://dav.jianguoyun.com/dav/test/test.sql --output test.sql

DELETE方法

DELETE方法用于刪除文件或文件夾。

curl --user "username:password" --request DELETE https://dav.jianguoyun.com/dav/test/test.sql

COPY方法

COPY方法用于復制文件,url為源文件,header中的Destination為目標文件地址。

curl --user "username:password" --request COPY https://dav.jianguoyun.com/dav/test/a/test.sql --header "Destination: https://dav.jianguoyun.com/dav/test/b/test.sql" 上面命令會將"/test/a/test.sql"復制到"/test/b/test.sql"里面。

MOVE方法

MOVE方法用于移動文件,url為源文件,header中的Destination為目標文件地址。

curl --user "username:password" --request MOVE https://dav.jianguoyun.com/dav/test/a/test.sql --header "Destination: https://dav.jianguoyun.com/dav/test/b/test.sql" 上面命令會將"/test/a/test.sql"移動到"/test/b/test.sql"里面。

LOCK和UNLOCK方法

這兩種方法我基本不用,我看文檔里面是需要傳xml的body內容,實現也很簡單,這里就不研究了。

總結

  • 首先本文只是做一個簡單的介紹,以及簡單的命令行示例。如果需要自己編程實現,我覺得把curl命令行變成代碼那是超級簡單的事情吧。
  • 特別需要注意這些接口的冪等特性,我看官方文檔有些有介紹的。比如有時候編程不檢查結果導致同個請求發送多次,自己需要測好異常情況。
  • 官方文檔里面有xml的請求體,用來表示不同的功能,我上面都沒有帶上,所以都是使用的默認請求。如果自己有需要就去【官方文檔】自行查看吧。
  • 總結

    以上是生活随笔為你收集整理的学习WebDav的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 黄色片视频免费看 | 在哪里看毛片 | 美女人人操 | 91精品免费在线观看 | 电车痴汉在线观看 | 国产精品一区二区av日韩在线 | 国产乡下妇女做爰毛片 | 91嫩草欧美久久久九九九 | av集中营| 欧美www | fc2ppv在线观看 | 国产午夜毛片 | 国产一二三在线观看 | 精品成人国产 | 91成人动漫 | 成a人v | 精品在线视频播放 | 国产精品片 | 亚洲福利视频一区二区 | 性色av浪潮 | 国产精品久久久久久精 | 亚洲一区久久久 | 国产传媒专区 | 亚洲综合日韩在线 | 成人高清视频免费观看 | 欧美国产不卡 | 日本欧美一区二区 | 伊人99 | jizz国产 | 日本欧美国产一区二区三区 | 成人av软件| 四虎永久地址 | 水蜜桃色314在线观看 | 欧美激情久久久久久久 | 亚洲成人777 | 亚洲aaa级 | 日韩人妻无码精品久久久不卡 | 久久久亚洲国产精品 | 精品人妻码一区二区三区红楼视频 | 人妻一区二区视频 | 国产刺激高潮av | 欧美一区二区三区在线视频 | 日韩一级黄色录像 | 色七七桃花影院 | 国产一区在线观看免费 | 香蕉视频一区二区三区 | 国产片一区二区三区 | 久久国产网站 | 欧美一区二区三区色 | 超碰国产在线观看 | 精品一区二区久久久久蜜桃 | 超碰c | 手机免费看av片 | 中文字幕不卡视频 | 四虎影视免费观看 | 娇妻玩4p被三个男人伺候电影 | 久久男人天堂 | 欧美黑人疯狂性受xxxxx野外 | 麻豆av一区二区三区 | 日韩小视频| 亚洲天堂视频一区 | 91超薄丝袜肉丝一区二区 | 婷婷久久精品 | 别揉我奶头啊嗯一区二区 | 真实偷拍激情啪啪对白 | 在线观看涩涩 | 亚洲精品尤物 | 国产欧美精品区一区二区三区 | 你懂的在线免费观看 | 午夜天堂影院 | 欧美一区二区三区久久成人精品 | 国产成人8x视频一区二区 | 欧洲精品码一区二区三区免费看 | 欧美在线视频一区二区三区 | 成人精品一区日本无码网 | 久久色在线视频 | 小少妇哺乳喂奶播放 | 日本3p视频 | 中文字幕欧美日韩 | 夜夜草天天草 | 日韩大胆视频 | 国产成人精品a视频一区 | аⅴ资源天堂资源库在线 | 久久成人国产精品入口 | av男女| av日韩在线免费观看 | 中文字幕在线观看的网站 | 国内一区二区视频 | 国产又黄又粗又猛又爽 | 中国黄色片视频 | 好色999| www.精品国产 | 大奶子在线观看 | 久久新 | 最新精品国产 | 国产精品欧美激情 | 免费看欧美一级特黄a大片 国产免费的av | 黄色网址免费 | 西西午夜影院 |