追加上传接口支持用户通过追加的方式在一个object后面直接追加内容的功能,每次追加上传的数据都能够即时可读。通过这种方式操作的object为Appendable Object。
Token的计算,上传策略的定义和跟普通上传接口保持一致。每次append操作按照普通上传的上传策略完成。
请求样式
POST /append/<position>
Host: <UploadDomain>
Content-Length:<appendSize>
Content-Type: multipart/form-data; boundary=<boundary>
--<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>--
请求消息参数
| 参数名称 | 描述 | 是否必选 | 
|---|---|---|
| append | 表明这是追加上传方式 | 是 | 
| position | 表明从何处追加,追加对象大小 | 是 | 
请求头部
| 头部名称 | 必填 | 描述 | 
|---|---|---|
| Host | 是 | 上传域名,可在用户管理界面获取 | 
| Content-Length | 是 | 追加内容大小 | 
| Content-Type | 是 | 标准的MIME类型 类型:字符串 固定值:multipart/form-data | 
表单说明
| 参数 | 必填 | 描述 | 
|---|---|---|
| <token> | 是 | 上传凭证 | 
| <x:VariableName> | 否 | 自定义变量的值名称 | 
| <x:VariableValue> | 否 | 自定义变量的值 | 
| <key> | 否 | 自定义文件名 | 
| <mimeType> | 否 | 自定义文件的 MIME-Type | 
| <deadline> | 否 | 文件保存期限。超过保存天数文件自动删除,单位:天。例如:1、2、3…… 注:0表示尽快删除,上传文件时建议不配置为0 | 
| <file> | 是 | 文件本身 | 
| <fileBinaryData> | 是 | 文件的二进制流 | 
响应样式
HTTP/1.1 status_code
x-wcs-next-append-position:object size
x-wcs-object-type:Appendable
Server: WS-web-server
<ResponseContent>
响应消息头
| 头部名称 | 必填 | 描述 | 
|---|---|---|
| x-wcs-next-append-position | 是 | 表明下一次追加的位置 字符串 | 
| x-wcs-object-type | 是 | 表明对象类型,追加上传的类型为Appendable,非追加上传的均为Normal 类型:字符串 | 
响应消息体
如果请求成功,<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.com/append/0