更新时间: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']));
 
   父主题: 其他接口