1.28.21 post-object

优质
小牛编辑
119浏览
2023-12-01

Post object related api supported by FDS

Version: 1.0.0

/{bucketname}

POST

Summary:

上传object,服务端将会返回上传的Object名字,保证唯一,不会覆盖已有Object

Description:

必须拥有Bucket的WRITE权限才能执行该操作

Parameters
NameLocated inDescriptionRequiredSchema
bucketnamepathBucket名字Yesstring
authorizationheader认证信息,计算方式参考签名认证相关文档Yesstring
Dateheader请求时间Yesstring
expiresquery如果上传成功,返回的签名的过期时间戳(UTC),单位毫秒,默认30天Nostring
bodybodyObject内容Yesbinary
Responses
CodeDescriptionSchema
200请求成功PutObjectResult

Models

PutObjectResult

NameTypeDescriptionRequired
bucketnamestring (int32)Bucket名字No
objectNamestringObject名字No
accessKeyIdstring签名用的accessKeyIdNo
signaturestring用于下载这个Object的签名No
expiresstring签名失效时间戳(UTC),单位毫秒,默认有效时间30天No

命令行示例

# 上传一个Object到fds-demo下,object的名字由服务端生成并返回,并且:
# 通过header指定object的content-type
# 通过header指定所有人可读
curl -v -X 'POST' 'http://cnbj0.fds.api.xiaomi.com/fds-demo/' \
> -H 'content-type: application/json' \
> -H 'authorization: Galaxy-V2 54xxx45:JUxxxc=' \
> -H 'x-xiaomi-meta-acl: PUBLIC_READ' \
> -H 'date: Mon, 27 Feb 2017 10:10:04 GMT' \
> -d '{}'
* Hostname was NOT found in DNS cache
*   Trying 111.206.200.99...
* Connected to cnbj0.fds.api.xiaomi.com (111.206.200.99) port 80 (#0)
> POST /fds-demo/ HTTP/1.1
> User-Agent: curl/7.35.0
> Host: cnbj0.fds.api.xiaomi.com
> Accept: */*
> content-type: application/json
> authorization: Galaxy-V2 54xxx45:JUxxxc=
> x-xiaomi-meta-acl: PUBLIC_READ
> date: Mon, 27 Feb 2017 10:10:04 GMT
> Content-Length: 2
> 
* upload completely sent off: 2 out of 2 bytes
< HTTP/1.1 200 OK
* Server Tengine is not blacklisted
< Server: Tengine
< Date: Mon, 27 Feb 2017 10:11:30 GMT
< Content-Type: application/json
< Content-Length: 174
< Connection: keep-alive
< Access-Control-Allow-Credentials: true
< Access-Control-Max-Age: 1728000
< Access-Control-Allow-Methods: GET, POST, PUT, HEAD, DELETE, OPTIONS
< Access-Control-Allow-Headers: DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization,Content-MD5
< Access-Control-Expose-Headers: content-md5, upload-time, x-xiaomi-meta-content-length
< 
* Connection #0 to host cnbj0.fds.api.xiaomi.com left intact
{"accessKeyId":"54xxx45","bucketName":"fds-demo","expires":1490782290071,"objectName":"f0f0b424-05a3-4e8d-81ee-597b9be199d7","signature":"2Gxxx1PM="}