更新时间:2023-04-28 17:01:18
单次请求直接上传完整的文件,若文件大小超过2G,必须使用分片上传。
注:
1.不同环境,使用分片上传的文件大小建议值不一样,可参考相应SDK内给出的建议值。
2.云存储提供的上传域名为普通域名,若对上传速度较为敏感,有要求的客户建议采用网宿上传加速服务。
上传请求以HTTP请求表单的形式组织,即multipart/form-data
。
POST /file/upload HTTP/1.1
Host: <UploadDomain>
Accept: */*
Content-Type: multipart/form-data; boundary=<boundary>
Content-Length: <multipartContentLength>
--<boundary>
Content-Disposition: form-data; name="token"
<uploadToken>
--<boundary>
Content-Disposition: form-data; name="<x:VariableName>"
<x:VariableValue>
--<boundary>
Content-Disposition: form-data; name="key"
<key>
--<boundary>
Content-Disposition: form-data; name="mimeType"
<mimeType>
--<boundary>
Content-Disposition: form-data; name="deadline"
<deadline>
--<boundary>
Content-Disposition: form-data; name="file"; filename="原文件名"
Content-Type: application/octet-stream
<fileBinaryData>
--<boundary>--
头部名称 | 必填 | 描述 |
---|---|---|
Host | 是 | 上传域名,请参见域名说明,可在控制台空间概览界面获取。 |
Accept | 是 | 接收的类型,固定为 */* 。 |
Content-Type | 是 | 内容类型,固定为 multipart/form-data 。<boundary> 为Multipart分隔符。 |
Content-Length | 是 | 内容总长度,单位:字节(Byte)。 |
参数 | 必填 | 描述 |
---|---|---|
<token> | 是 | 上传凭证。 |
<x:VariableName> | 否 | 自定义变量的值名称。 |
<x:VariableValue> | 否 | 自定义变量的值。 |
<key> | 否 | 自定义文件名。 |
<mimeType> | 否 | 自定义文件的MIME-Type 。 |
<deadline> | 否 | 文件保存期限。超过保存天数文件自动删除,单位:天。例如:1、2、3…… 注:0表示尽快删除,上传文件时建议不配置为0。 |
<file> | 是 | 文件信息,如未指定文件名,会读取文件的fileName作为文件名。 |
<fileBinaryData> | 是 | 文件的完整内容。 |
注:表单上传时fileName、fileBinaryData等信息一般可通过表单框架自动填入,如curl -F file=@filePath即可填入文件信息和文件内容
HTTP/1.1 200 OK
Server: WS-web-server
<ResponseContent>
如果请求成功,<ResponseContent>
为如下内容的URL安全的Base64编码字符串:
hash=<filehash>
字段名 | 必填 | 描述 |
---|---|---|
<filehash> | 是 | 文件哈希值。 |
注:如果上传时定义了returnBody
,则返回内容中会增加returnBody
的内容,如 name=<filename>&size=<filesize>hash=<filehash>
。
如果请求失败,<ResponseContent>
为如下内容的Json
字符串:
"code": "<code string>",
"message": "<message string>"
}
字段名 | 必填 | 描述 |
---|---|---|
code | 是 | HTTP请求响应码,参见HTTP响应状态码。 |
message | 是 | 提示信息。 |
curl -v -i -X POST -H "Expect:" -F file=@D:/8.png -F key=m.png -F token="6a69ab4062cb03059e4c13a0f5e662523effad49:ZGE1MWY1YzA4ZDgyMjVlM2Q3MmE2YjZkZDI3MmY1ZmMxNjk2YTFjOA==:eyJzY29wZSI6InRlc3QiLCJkZWFkbGluZSI6IjE0NzIxNzY2MzQwMDAiLCJvdmVyd3JpdGUiOjAsImZzaXplTGltaXQiOjAsImluc3RhbnQiOjAsInNlcGFyYXRlIjowfQ==" --url 'http://updomain.com/file/upload'