普通上传

描述

该接口提供往云存储平台上一个指定的空间上传一个资源文件。若文件大小超过500M,必须使用分片上传。
注:
<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> 文件本身
<fileBinaryData> 文件的二进制流

响应说明

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://uploadDomain/file/upload'