如何使用 curl 将文件上传到共享 b2drop.eudat(owncloud) 存储库?

How to upload files into shared b2drop.eudat(owncloud) repository using curl?

以下 link:https://b2drop.eudat.eu/s/DfQlm5J42nEGnH7 包含文件和文件夹(可公开访问)。请注意,不需要用户名和密码。

我可以通过以下方式下载 zip 文件:

wget https://b2drop.eudat.eu/s/DfQlm5J42nEGnH7/download

这将生成一个下载文件。我可以通过以下方式解压缩:unzip download

在网站的 GUI 上,当我单击加号而不是 upload 符号时,它会打开一个部分,我可以在其中 select 我想下载哪些文件。我想通过控制台完成所有这些操作。

[Q] 从它的 GUI 我也可以上传文件。是否可以使用 curlwget 使用控制台上传文件?

以下命令没有帮助。

curl --upload-file run.sh https://b2drop.eudat.eu/s/DfQlm5J42nEGnH7/

我也尝试过关注 link:https://github.com/owncloud/pyocclient 但没有帮助。

oc = owncloud.Client('https://b2drop.eudat.eu/')
oc.login('username@domain.edu', password )
oc.put_file("https:/b2drop.eudat.eu/s/DfQlm5J42nEGnH7", "path/to/upload/run.sh")
oc.put_file("/s/DfQlm5J42nEGnH7", "path/to/upload/run.sh")
oc.put_file("/DfQlm5J42nEGnH7", "path/to/upload/run.sh")

感谢您的宝贵时间和帮助。

根据网络日志分析,这是一个 PUThttps://b2drop.eudat.eu/public.php/webdav/<filename> 的请求,内容类型 text/plain,没有密码和用户名 DfQlm5J42nEGnH7 的基本身份验证.

下面将上传本地文件 run.sh :

curl -X PUT -H 'Content-Type: text/plain' \
     -H 'Authorization: Basic RGZRbG01SjQybkVHbkg3Og==' \
     --data-binary '@run.sh' \
     https://b2drop.eudat.eu/public.php/webdav/run.sh

请注意,基本身份验证 base64 编码字符串给出 DfQlm5J42nEGnH7: 解码(用户名:密码)

原网络日志: