PUT Object
API Description
You can use this API to upload an object to a specified bucket.
Method Definition
ObsClient.putObject
Request Parameter
Field |
Type |
Optional or Mandatory |
Description |
---|---|---|---|
Bucket |
String |
Mandatory |
Bucket name |
Key |
String |
Mandatory |
Object name |
RequestDate |
String or Date |
Optional |
Request time
NOTE:
When the parameter type is String, the value must comply with the ISO8601 or RFC822 standards. |
ACL |
String |
Optional |
Pre-defined access control policy specified during object creation |
StorageClass |
String |
Optional |
Storage class, which can be specified during the object creation |
Body |
String |
Optional |
Object content to be uploaded |
SourceFile |
File or Blob |
Optional |
File to be uploaded (The browser must support FileReader.) |
ProgressCallback |
Function |
Optional |
Callback function for obtaining the upload progress
NOTE:
This callback function contains the following parameters in sequence: Number of uploaded bytes, total bytes, and used time (unit: second). |
Offset |
Number |
Optional |
Start offset (in bytes) of a part in the source file. The default value is 0. This field is effective only when SourceFile is set. |
Metadata |
Object |
Optional |
Customized metadata of the object |
WebsiteRedirectLocation |
String |
Optional |
Location where the object is redirected to, when the bucket is configured with website hosting |
Expires |
Number |
Optional |
Expiration time of the object, in days |
SuccessActionRedirect |
String |
Optional |
Redirection address after the upload is successful |
ContentType |
String |
Optional |
MIME type of the object |
ContentLength |
Number |
Optional |
Object size in bytes. This parameter is effective when SourceFile is set. |
ContentMD5 |
String |
Optional |
Base64-encoded MD5 value of the object data to be uploaded. It is provided for the OBS server to verify data integrity. |
SseKms |
String |
Optional |
Algorithm used in SSE-KMS encryption. The value can be:
|
SseKmsKey |
String |
Optional |
Master key used in SSE-KMS encryption. The value can be null. |
SseC |
String |
Optional |
Algorithm used in SSE-C encryption. The value can be:
|
SseCKey |
String |
Optional |
Key used in SSE-C encryption. It is calculated by using AES-256. |
- Body and SourceFile cannot be used together.
- If both Body and SourceFile are null, the size of the object to be uploaded is 0 bytes.
Returned Result (InterfaceResult)
Field |
Type |
Description |
---|---|---|
RequestId |
String |
Request ID returned by the OBS server |
ETag |
String |
Object ETag |
VersionId |
String |
Object version ID |
StorageClass |
String |
Storage class of the object. When the storage class is OBS Standard, the value is null. |
SseKms |
String |
Algorithm used in SSE-KMS |
SseKmsKey |
String |
ID of the KMS master key when SSE-KMS is used |
SseC |
String |
Algorithm used in SSE-C |
SseCKeyMd5 |
String |
MD5 value of the key for encrypting objects when SSE-C is used. This value is used to check whether any error occurs during the transmission of the key. |
Sample Code
obsClient.putObject({ Bucket : 'bucketname', Key : 'objectkey', Metadata:{meta1:'value1', meta2:'value2'}, Body : 'Hello OBS', ContentType: 'text/plain' },function (err, result) { if(err){ console.error('Error-->' + err); }else{ if(result.CommonMsg.Status < 300){ console.log('RequestId-->' + result.InterfaceResult.RequestId); console.log('ETag-->' + result.InterfaceResult.ETag); console.log('VersionId-->' + result.InterfaceResult.VersionId); console.log('StorageClass-->' + result.InterfaceResult.StorageClass); }else{ console.log('Code-->' + result.CommonMsg.Code); console.log('Message-->' + result.CommonMsg.Message); } } });
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot