简介
本文档提供关于生成对象预签名链接相关的 SDK 示例代码。关于使用预签名 URL 上传的说明请参见 预签名授权上传, 使用预签名 URL 下载的说明请参见 预签名授权下载。说明签名规则。请参考 请求签名。建议用户使用临时密钥生成预签名,通过临时授权的方式进一步提高预签名上传、下载等请求的安全性。申请临时密钥时,请遵循 最小权限指引原则,防止泄露目标存储桶或对象之外的资源。如果您一定要使用永久密钥来生成预签名,建议永久密钥的权限范围仅限于上传或下载操作,以规避风险。
生成对象下载预签名链接
功能说明
生成用于 COS 对象下载的预签名链接。
示例代码
// 存储桶名称,由 bucketname-appid 组成,appid 必须填入,可以在 COS 控制台查看存储桶名称。 https://console.cloud.tencent.com/cos5/bucketlet bucket = "examplebucket-1250000000";//对象在存储桶中的位置标识符,即对象键let cosPath = "exampleobject";//url请求参数let requestParameters = {"test1k":"test1v", "test2k":"test2v"};try { // 获取对象下载预签名链接 String objectUrl = await Cos.getDefaultService().getPresignedUrl( bucket, cosPath, { parameters: requestParameters } );} catch (e) { // 失败后会抛异常 根据异常进行业务处理 console.log(e);}
参数说明
参数名称 | 描述 | 类型 | 是否必选 |
bucket | 桶名称,Bucket 的命名规则为 BucketName-APPID,详情请参见 存储桶概述 | String | 是 |
cosPath | 对象键 是对象在存储桶中的唯一标识。例如,在对象的访问域名 examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com/doc/picture.jpg 中,对象键为 doc/picture.jpg |
String | 是 |
signValidTime | 设置签名有效期(单位为秒),注意这里是签名有效期,您需要自行保证密钥有效期 | Int | 否 |
signHost | 是否签入Header Host,不签可能导致请求失败或安全漏洞 | Bool | 否 |
parameters | http请求参数,传入的请求参数需与实际请求相同,能够防止用户篡改此HTTP请求的参数 | Map | 否 |
返回结果说明
成功:返回对象下载预签名链接。失败:发生错误(如身份认证失败),抛出异常 CosXmlClientError 或者 CosXmlServiceError。详情请参见 异常处理。
对象存储官网1折活动,限时活动,即将结束,速速收藏
同尘科技为腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠
转转请注明出处:https://www.yunxiaoer.com/146092.html