"name/cos:GetObject"
permission.Authorization
is required for all operations on private resources for COS to determine whether a request is valid.COS.getAuthorization
method is used to calculate the authentication credential (Authorization), which is the signing information used to verify the validity of the request.// Log in to https://console.tencentcloud.com/cam/capi to check and manage the SecretId and SecretKey of your project.var COS = require('cos-nodejs-sdk-v5');var Authorization = COS.getAuthorization({SecretId: process.env.SecretId, // User `SecretId`. We recommend that you obtain it from the environment variable. In addition, we recommend that you use a sub-account key and follow the principle of least privilege to reduce risks. For information about how to obtain a sub-account key, visit https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1.SecretKey: process.env.SecretKey, // User `SecretKey`. We recommend that you obtain it from the environment variable. In addition, we recommend that you use a sub-account key and follow the principle of least privilege to reduce risks. For information about how to obtain a sub-account key, visit https://www.tencentcloud.com/document/product/598/37140?from_cn_redirect=1.Method: 'get',Key: 'a.jpg',Expires: 60,Query: {},Headers: {},});
Parameter | Description | Type | Required |
SecretId | Your SecretId . | String | Yes |
SecretKey | Your SecretKey . | String | Yes |
Method | HTTP request method such as GET , POST , DELETE , or HEAD | String | Yes |
Key | Object key (object name) is the unique ID of an object in a bucket. If the request operation is to be performed on a file, this parameter is required and should be a filename. If the operation is on a bucket, this parameter should be left empty. | String | No |
Query | Request parameters to be included in the signature in the format of {key: 'val'} | Object | No |
Headers | Request headers to be included in the signature in the format of {key: 'val'} | Object | No |
Expires | Signature expiration time in seconds. Default value: 900 . | Number | No |
authorization
.var url = cos.getObjectUrl({Bucket: 'examplebucket-1250000000', /* Your bucket name. Required. */Region: 'COS_REGION', /* Bucket region, such as `ap-beijing`. Required. */Key: '1.jpg', /* Object key stored in the bucket (required), such as `1.jpg` and `a/b/test.txt`. */Sign: false,});
var url = cos.getObjectUrl({Bucket: 'examplebucket-1250000000', /* Your bucket name. Required. */Region: 'COS_REGION', /* Bucket region, such as `ap-beijing`. Required. */Key: 'Profile photo.jpg', /* Object key stored in the bucket (such as `1.jpg` and `a/b/test.txt`). Required. */});
cos.getObjectUrl({Bucket: 'examplebucket-1250000000', /* Your bucket name. Required. */Region: 'COS_REGION', /* Bucket region, such as `ap-beijing`. Required. */Key: 'Profile photo.jpg', /* Object key stored in the bucket (such as `1.jpg` and `a/b/test.txt`). Required. */Sign: false,},function (err, data) {console.log(err || data.Url);});
cos.getObjectUrl({Bucket: 'examplebucket-1250000000', /* Your bucket name. Required. */Region: 'COS_REGION', /* Bucket region, such as `ap-beijing`. Required. */Key: 'Profile photo.jpg', /* Object key stored in the bucket (such as `1.jpg` and `a/b/test.txt`). Required. */Sign: true,Expires: 3600, // Unit: second},function (err, data) {console.log(err || data.Url);});
var request = require('request');var fs = require('fs');cos.getObjectUrl({Bucket: 'examplebucket-1250000000', /* Your bucket name. Required. */Region: 'COS_REGION', /* Bucket region, such as `ap-beijing`. Required. */Key: 'Profile photo.jpg', /* Object key stored in the bucket (such as `1.jpg` and `a/b/test.txt`). Required. */Sign: true,},function (err, data) {if (err) return console.log(err);console.log(data.Url);var req = request(data.Url, function (err, response, body) {console.log(err || body);});var writeStream = fs.createWriteStream(__dirname + '/1.jpg');req.pipe(writeStream);});
Query
and Header
cos.getObjectUrl({Bucket: 'examplebucket-1250000000', /* Your bucket name. Required. */Region: 'COS_REGION', /* Bucket region, such as `ap-beijing`. Required. */Key: 'Profile photo.jpg', /* Object key stored in the bucket (such as `1.jpg` and `a/b/test.txt`). Required. */Sign: true,/* The HTTP request parameters passed in should be the same as those of the actual request. This can prevent users from tampering with the HTTP request parameters. */Query: {'imageMogr2/thumbnail/200x/': '',},/* The HTTP request headers passed in should be included in the actual request. This can prevent users from tampering with the HTTP request headers that are signed here. */Headers: {host: 'xxx', /* Specified host for access. Error code 403 will be reported for access by a non-specified host. */},},function (err, data) {console.log(err || data.Url);});
Put Object
uploadvar request = require('request');var fs = require('fs');cos.getObjectUrl({Bucket: 'examplebucket-1250000000', /* Your bucket name. Required. */Region: 'COS_REGION', /* Bucket region, such as `ap-beijing`. Required. */Key: 'Profile photo.jpg', /* Object key stored in the bucket (such as `1.jpg` and `a/b/test.txt`). Required. */Method: 'PUT',Sign: true,},function (err, data) {if (err) return console.log(err);console.log(data.Url);var readStream = fs.createReadStream(__dirname + '/1.jpg');var req = request({method: 'PUT',url: data.Url,},function (err, response, body) {console.log(err || body);});readStream.pipe(req);});
Parameter | Description | Type | Required |
Bucket | Bucket name in the format of BucketName-APPID . | String | Yes |
Region | String | Yes | |
Key | Object key (object name) is the unique ID of an object in a bucket. If the request operation is to be performed on a file, this parameter is required and should be a filename. If the operation is on a bucket, this parameter should be left empty. | String | Yes |
Sign | Whether to return a signed URL. Default value: true . | Boolean | No |
Protocol | Valid values: http: (default value), https: . | String | No |
Domain | Bucket access domain name. Default value: {BucketName-APPID}.cos.{Region}.myqcloud.com . | String | No |
Method | HTTP request method such as GET , POST , DELETE , or HEAD . Default value: GET . | String | No |
Query | Request parameters to be included in the signature in the format of {key: 'val'} | Object | No |
Headers | Request headers to be included in the signature in the format of {key: 'val'} | Object | No |
Expires | Signature expiration time in seconds. Default value: 900 . | Number | No |
function(err, data) { ... }
Parameter | Description | Type |
err | Error code, which is returned when an error (network error or service error) occurs. If the request is successful, this parameter is empty. For more information, please see Error Codes. | Object |
data | The object returned when the request is successful. If an error occurs with the request, this parameter is empty. | Object |
- Url | Calculated URL | String |
Was this page helpful?