笔记:外部调用 Cloudreve 的 API 对网盘进行 操作...

本来只是想把文件从外部导入到Cloudreve,但是软件里没有提供任何合适的途径,研究了好久,试了好多好多种奇怪的方法...

最后发现,还是模拟HTTP请求来的快!

离线下载

想要模拟用户新建离线下载任务,首先要登录:

第一步 登录 Cloudreve

1) 请求地址

http://155.94.144.40:5212/api/v3/user/session

先使用http,毕竟我目前也不知道怎么用https
如果要在自己的Cloudreve使用请更换ip。

2) 调用方式:HTTP post

3) 接口描述:

  • 这个是从前端的login界面登录时会发送的请求。

4) 请求参数:

{"userName":"这里写邮箱","Password":"这里是密码.","captchaCode":""}

POST参数:

字段名称字段说明类型必填备注
userName邮箱-Y-
Password密码-Y-
captchaCode二步验证-N没开就不用

5) 请求返回结果:

{
    "code": 0,
    "data": {
        "id": "9lCQ",
        "user_name": "*******(你的账号)",
        "nickname": "番剧库",
        "status": 0,
        "avatar": "",
        "created_at": 1619172964,
        "preferred_theme": "",
        "anonymous": false,
        "policy": {
            "saveType": "onedrive",
            "maxSize": "0.00mb",
            "allowedType": [
                
            ],
            "upUrl": "/api/v3/file/upload",
            "allowSource": true
        },
        "group": {
            "id": 7,
            "name": "特殊",
            "allowShare": true,
            "allowRemoteDownload": true,
            "allowArchiveDownload": false,
            "shareDownload": true,
            "compress": true,
            "webdav": true
        },
        "tags": [
            
        ]
    },
    "msg": ""
}

6) 同时会返回Header

Ip: 155.94.144.40
Request URL: http://155.94.144.40:5212/api/v3/user/session
Request Method: POST
Status Code: 200 OK
Request Proto: HTTP/1.1
Request HeaderResponse HeaderContent-Type:application/json; charset=utf-8;
Set-Cookie:cloudreve-session=MTYyMDU4MTA1OHxOd3dBTkZZMU4wNVBNazlUV0RKTFNUWlNWMHBLVlRORVNVODJUVXhWTTBsT1RGRk5EUk9ORnBEVEZaVVF6Wk5Na0U9fMydxX6tKCFY0u7dGqFaZAlIPLGyl3-zPvb0UX9wUD0x; Path=/; Expires=Sun, 16 May 2021 17:24:18 GMT; Max-Age=604800; HttpOnly;
Date:Sun, 09 May 2021 17:24:18 GMT;
Content-Length:468;

这里返回的Cookie就相当于你的密钥,有了Cookie就能在七天之内随便折腾。(不过最好还是先获取再进行你的操作)

第二步 提交离线下载请求

1) 请求地址

http://155.94.144.40:5212/api/v3/aria2/url

如果要在自己的Cloudreve使用请更换ip。

2) 调用方式:HTTP post

3) 接口描述:

  • 相当于你在离线下载界面添加一个任务,需要cookie

4) 请求参数:

{
    "url": "下载链接",
    "dst": "/下载目录"
}

POST参数:

字段名称字段说明类型必填备注
url下载链接jsonY输入文件下载地址,支持 HTTP(s)/FTP/磁力链
dst下载目录jsonY直接键入你想要的下载目录,必须是已经存在的目录

5) 请求返回结果:

{
"code": 0,
"msg": ""
}
//成功直接回复0

//填了不存在的路径
{"code":404,"msg":"存放路径不存在"}
//被Aria2拒绝的情况
{"code":-1,"msg":"任务创建失败"}

刚开始研究HTTP,还是挺好用的。

感觉这样甚至还能用简简单单的HTTP请求做出来个Cloudreve的客户端出来。

文件夹操作

创建目录

1) 请求地址

http://155.94.144.40:5212/api/v3/directory

2) 调用方式:HTTP put

3) 接口描述:

  • 新建指定目录,可建多层,必须在请求标头中附加Cookie。

4) 请求参数:

{
    "path": "/test/123123/哈哈哈/??/sad"
}
#可以写任何Cloudreve允许的字符

参数:

字段名称字段说明类型必填备注
path路径stringY-

5) 请求返回结果:

{"code":0,"msg":""}

{"code":40004,"msg":"同名目录已存在"}

评论

  1. ck呵呵
    Android Chrome 103.0.5060.129
    1年前
    2022-9-25 17:21:31

    好吧,我在研究mc的全自动安装还有打包的客户端及服务端,想用这个云盘当作文件上传的载体,那我再研究看看吧,谢谢大佬

  2. ck小捷
    Windows Edge 105.0.1343.50
    1年前
    2022-9-25 15:31:27

    大佬请问还有其他API吗?比如上传文件,创建直链之类的,我自己抓包是了好久不知道为啥都用不成功

    • Magma
      博主
      ck小捷
      Android Chrome 105.0.0.0
      1年前
      2022-9-25 16:28:37

      我已经不用cloudreve了... 你就用浏览器抓包呗,是哪里失败了?

      • ck呵呵
        Magma
        Android Chrome 103.0.5060.129
        1年前
        2022-9-25 16:39:21

        我知道api的地址了,但是我不知道要怎么调用,一直调用失败,我用postman模拟调用返回的都是错误

        • Magma
          博主
          ck呵呵
          Android Chrome 105.0.0.0
          1年前
          2022-9-25 16:54:46

          返回什么错误?未登录还是什么

          • ck呵呵
            Magma
            Android Chrome 103.0.5060.129
            1年前
            2022-9-25 17:14:27

            我是先用put发送请求说要上传,但要在用post传文件的时候他就返回4004给我

          • Magma
            博主
            ck呵呵
            Android Chrome 105.0.0.0
            1年前
            2022-9-25 17:18:28

            啊,这个我也不知道..目前还没研究过通过http请求传文件

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇