更新时间:2022-02-10 GMT+08:00
生成带授权信息的URL
功能说明
通过访问密钥、请求方法类型、请求参数等信息生成一个在Query参数中携带鉴权信息的URL,以对OBS服务进行特定操作。
方法定义
ObsClient.createSignedUrlSync
请求参数
字段名 |
类型 |
约束 |
说明 |
---|---|---|---|
Method |
String |
必选 |
HTTP方法类型,支持的值:
|
Bucket |
String |
可选 |
桶名。 |
Key |
String |
可选 |
对象名。 |
SpecialParam |
String |
可选 |
特殊操作符,代表要操作的子资源,支持的值:
|
Expires |
Number |
可选 |
带授权信息的URL的过期时间(单位:秒),默认值:300。 |
Headers |
Object |
可选 |
请求中携带的头域。 |
QueryParams |
Object |
可选 |
请求中携带的查询参数。 |
返回结果
字段名 |
类型 |
说明 |
---|---|---|
SignedUrl |
String |
带授权信息的URL。 |
ActualSignedRequestHeaders |
Object |
通过带授权信息的URL发起请求时实际应携带的头域。 |
代码样例
// 生成上传对象的带授权信息的URL var putObjectResult = obsClient.createSignedUrlSync({Method : 'PUT', Bucket : 'bucketname', Key : 'objectkey', Headers : {'Content-Type' : 'text/plain'}}); console.log('SignedUrl-->' + putObjectResult['SignedUrl']); console.log('ActualSignedRequestHeaders-->' + JSON.stringify(putObjectResult['ActualSignedRequestHeaders'])); // 生成设置对象ACL的带授权信息的URL var setObjectAclResult = obsClient.createSignedUrlSync({Method : 'PUT', Bucket : 'bucketname', Key : 'objectkey', SpecialParam: 'acl', Headers: {'x-amz-acl' : 'public-read'}}); console.log('SignedUrl-->' + setObjectAclResult['SignedUrl']); console.log('ActualSignedRequestHeaders-->' + JSON.stringify(setObjectAclResult['ActualSignedRequestHeaders'])); // 生成下载对象的带授权信息的URL var getObjectResult = obsClient.createSignedUrlSync({Method : 'GET', Bucket : 'bucketname', Key : 'objectkey'}); console.log('SignedUrl-->' + getObjectResult['SignedUrl']); console.log('ActualSignedRequestHeaders-->' + JSON.stringify(getObjectResult['ActualSignedRequestHeaders'])); // 生成删除对象的带授权信息的URL var deleteObjectResult = obsClient.createSignedUrlSync({Method : 'DELETE', Bucket : 'bucketname', Key : 'objectkey'}); console.log('SignedUrl-->' + deleteObjectResult['SignedUrl']); console.log('ActualSignedRequestHeaders-->' + JSON.stringify(deleteObjectResult['ActualSignedRequestHeaders']));
父主题: 其他接口