skyView API 一览
图片上传的一般流程
1. 用户请求获取用于图床的 token (该部分应由 zvms-backend 实现)
用户访问 backend 服务器,请求图床 token 。 backend 服务器再根据当前用户的身份,发送请求至图床服务器。
1
url: BASEURL/user/getToken?superAdminToken=<...>&userId=<...>&permission=<...>
permission
字段,0
表示普通用户,1
表示管理员用户。superAdminToken
是认证服务器的密钥,是认为预先设定的。
2. 用户得到图床 token ,可上传图片至图床服务器
1
POST /user/image
必须内容: request.form['token']
、 request.files['image']
。
返回内容:
1
2
3
4
5
6
7
8
9
10
11
{
"code": 200,
"message": "上传图片成功",
"data": {
"url": config.SERVERURL + "/getimage/" + fileId,
"author": userId,
"md5": md5,
"keywords": keywords,
"timestamp": timestamp
}
}
3. 用户得到图片 url ,即可在前端展示该图片。
1
GET 你上面获取到的 data.url 字段
服务器将会从加密的 Backblaze 上,通过 Cloudflare 的流量转发,再通过图床服务器的流量转发,直接呈现图片。
4. 其他操作
以下操作均需要请求参数 token=<...>
来验证身份。
- GET
/user/<userId>/image
获取某个用户的所有图片列表。若不是自己的,需要管理员权限。 - GET
/user/image
获取当前用户的所有图片列表。 - GET
/image/:id
获取图片信息。
本文由作者按照
CC BY 4.0
进行授权