最近更新时间:2024-11-15 17:15:25
Node.js SDK 提供获取对象 URL、获取请求预签名 URL 接口,详细操作请查看本文说明和示例。
在开始使用之前,完成了SDK初始化。
//获取不带签名 Object URL
client.object.generatePresignedUrl({
Bucket: '<bucketName>', // 填入存储桶,非必填
Key: '<objectKey>',// 填入对象键,必填字段
Sign: false, //是否返回带有签名的 Url,默认true,非必填
Method: 'PUT' //请求方式,默认GET,非必填
}, function (res, data) {
console.log('url: ', data)
})
//获取带签名Object URL
client.object.generatePresignedUrl({
Bucket: '<bucketName>', // 填入存储桶,非必填
Key: '<objectKey>',// 填入对象键,必填字段
Method: 'HEAD' //请求方式,默认GET,非必填
}, function (res, data) {
console.log('url: ', data)
})
//指定链接有效时间
client.object.generatePresignedUrl({
Bucket: '<bucketName>', // 填入存储桶,非必填
Key: '<objectKey>',// 填入对象键,必填字段
Method: 'HEAD', //请求方式,默认GET,非必填
Expiration: 5 * 60, //链接有效时间,单位s,不指定的话则默认为 900 秒,非必填
}, function (res, data) {
console.log('url: ', data)
})
//获取Object URL并下载文件
client.object.generatePresignedUrl({
Bucket: '<bucketName>', // 填入存储桶,非必填
Key: '<objectKey>',// 填入对象键,必填字段
Method: 'GET', //请求方式,默认GET,非必填
Expiration: 5 * 60 //链接有效时间,单位s,不指定的话则默认为 900 秒,非必填
}, function (res, data) {
request({
method: 'get',
uri: data,
}, '', '', function (err, data, res) {
console.log(err, data)
fs.writeFileSync('./objectKey', data)
});
})
//生成预签名 URL,并在签名中携带 Query 和 Header
client.object.generatePresignedUrl({
Bucket: '<bucketName>', // 填入存储桶,非必填
Key: '<objectKey>',// 填入对象键,必填字段
Expiration: 5 * 60, //链接有效时间,单位s,不指定的话则默认为 900 秒,非必填
Method: 'POST',//请求方式,默认GET,非必填
QueryParams: {
uploads: ''
}, //填入Query请求参数,按照{key: value}的格式,非必填
headers:{
'x-kss-storage-class': 'STANDARD'
} //请求头,非必填
}, function (res, data) {
console.log('url: ', data)
})
//获取预签名 Put Object 上传 URL
client.object.generatePresignedUrl({
Bucket: '<bucketName>', // 填入存储桶,非必填
Key: '<objectKey>',// 填入对象键,必填字段
Expiration: 5 * 60, //链接有效时间,单位s,不指定的话则默认为 900 秒,非必填
Method: 'PUT',//请求方式,默认GET,非必填
headers:{
'x-kss-storage-class': 'STANDARD',
'x-kss-acl': 'public-read'
} //请求头,非必填
}, function (res, data) {
console.log('url: ', data)
})
纯净模式