FDS Restful API

Put object related api supported by FDS

Version: 1.0.0

/{bucketname}/{objectname}


PUT

Summary: upload object,if Object with the same name,it will be overrided

Description: must have WRITE permission of the bucket

Parameters

Name Located in Description Required Schema
bucketname path Bucket name Yes string
objectname path name of the bucket uploaded Yes string
authorization header authentication info,The calculation method is referred to the relevant document of signature verification No string
Date header request time Yes string
content-type header Object的content-type No string
x-xiaomi- header user-defined, header info used x-xiaomi-as prefix No string
expires query if uploading successfully, the expire timestamp of the signature returned(UTC), unit is ms, default 30 days No string
body body Object content Yes binary

Responses

Code Description Schema
200 request successfully PutObjectResult

Models


PutObjectResult

Name Type Description Required
bucketName string (int32) Bucket name No
objectName string Object name No
accessKeyId string accessKeyId used for signature No
signature string signature used for downloading the object No
expires string the expire timestamp of the signature returned(UTC), unit is ms, default 30 days No

command line examples

# upload tests/test.txt to fds-demo
curl -v -X 'PUT' 'http://cnbj0.fds.api.xiaomi.com/fds-demo/tests/test.txt' \
> -H 'content-type: application/octet-stream' \
> -H 'authorization: Galaxy-V2 541xxx45:LepxxxmQ=' \
> -H 'date: Mon, 27 Feb 2017 09:40:11 GMT' \
> -d 'This is a test'
* 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)
> PUT /fds-demo/tests/test.txt HTTP/1.1
> User-Agent: curl/7.35.0
> Host: cnbj0.fds.api.xiaomi.com
> Accept: */*
> content-type: application/octet-stream
> authorization: Galaxy-V2 541xxx45:LepxxxmQ=
> date: Mon, 27 Feb 2017 09:40:11 GMT
> Content-Length: 14
> 
* upload completely sent off: 14 out of 14 bytes
< HTTP/1.1 200 OK
* Server Tengine is not blacklisted
< Server: Tengine
< Date: Mon, 27 Feb 2017 09:41:12 GMT
< Content-Type: application/json
< Content-Length: 152
< 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":1490780472318,"objectName":"tests/test.txt","signature":"6WxxxQ="}
# upload tests/test.txt to fds-demo,and
# specify content-type
# specify object for all to read
curl -v -X 'PUT' 'http://cnbj0.fds.api.xiaomi.com/fds-demo/tests/test.txt' \
> -H 'content-type: application/json' \
> -H 'authorization: Galaxy-V2 54xxx45:+MxxxN0=' \
> -H 'x-xiaomi-meta-acl: PUBLIC_READ' \
> -H 'date: Mon, 27 Feb 2017 09:58:15 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)
> PUT /fds-demo/tests/test.txt HTTP/1.1
> User-Agent: curl/7.35.0
> Host: cnbj0.fds.api.xiaomi.com
> Accept: */*
> content-type: application/json
> authorization: Galaxy-V2 54xxx45:+MxxxN0=
> x-xiaomi-meta-acl: PUBLIC_READ
> date: Mon, 27 Feb 2017 09:58:15 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 09:59:07 GMT
< Content-Type: application/json
< Content-Length: 152
< 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":1490781547554,"objectName":"tests/test.txt","signature":"MuxxxoQ="}

results matching ""

    No results matching ""