Skip to content

文件上传 ​

官方文档:https://www.yhchat.com/document/400-454

请求URL ​

https://chat-go.jwzhd.com/open-apis/v1/file/upload?token=016ec8e4d17a4fbda3ccb0e99b44aca0

请求类型 ​

POST

请求头 ​

bash
Content-Type: "multipart/form-data"

请求参数 ​

字段类型是否必填说明
filefile是文件内容,仅限单个文件,上传文件大小不超过 20MB

响应内容 ​

字段类型说明
codeint响应代码
msgstring响应信息,包括异常信息
dataObject返回数据

完整示例 ​

bash
curl --location 'https://chat-go.jwzhd.com/open-apis/v1/file/upload?token=016ec8e4d17a4fbda3ccb0e99b44aca0' \
--header 'Content-Type: multipart/form-data' \
--form 'file=@"D:/file/aaa/bbb.txt"'

文件上传响应示例 ​

json
{
  "code": 1,
  "data": {
    "fileKey": "016ec8e4d17a4fbda3ccb0e99b44aca0xx"
  },
  "msg": "success"
}

如何获取访问地址 ​

上传成功后返回的 fileKey 不是最终访问地址,不能直接拿来拼接文件 URL。fileKey 只是上传成功后的返回值,真正的访问地址需要根据文件内容重新计算哈希。

文件访问地址的生成规则如下:

https://chat-file.jwznb.com/{fileHash}.{ext}

其中 fileHash 是对文件内容计算得到的哈希值,ext 是文件的真实扩展名,不是接口返回的 fileKey。

例如,上文我们上传的是 D:/file/aaa/bbb.txt,那么在代码里会先读取这个文件内容,再对文件内容做哈希计算,得到对应的 fileHash,然后拼接成:

https://chat-file.jwznb.com/{fileHash}.txt

具体代码参考: