更新时间:2023-11-08 GMT+08:00
分享

SDK公共结果对象

调用ObsClient的相关接口完成后,如果未发生异常,则均会返回公共结果对象。该对象包含的内容见下表:

字段名

类型

说明

CommonMsg

Object

接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等。

  

Status

Number

HTTP状态码,小于300表明操作成功;反之,表明操作失败。

Code

String

OBS服务端错误码,当Status小于300时为空。

Message

String

OBS服务端错误描述,当Status小于300时为空。

HostId

String

请求的服务端ID,当Status小于300时为空。

RequestId

String

OBS服务端返回的请求ID。

Id2

String

OBS服务端返回的请求ID2。

Indicator

String

OBS服务端返回的详细错误码,当Status小于300时为空。

InterfaceResult

Object

操作成功后的结果数据,当Status大于300时为空。

  

RequestId

String

OBS服务端返回的请求ID。

Id2

String

OBS服务端返回的请求ID2。

其他字段

请查阅《对象存储服务Node.js SDK API参考》。

处理公共结果对象的示例代码如下:

// 引入obs库
// 使用npm安装
var ObsClient = require('esdk-obs-nodejs');
// 使用源码安装
// var ObsClient = require('./lib/obs');

// 创建ObsClient实例
const obsClient = new ObsClient({
    //推荐通过环境变量获取AKSK,这里也可以使用其他外部引入方式传入,如果使用硬编码可能会存在泄露风险。
    //您可以登录访问管理控制台获取访问密钥AK/SK,获取方式请参见https://support.huaweicloud.com/usermanual-ca/ca_01_0003.html
    access_key_id: process.env.ACCESS_KEY_ID,
    secret_access_key: process.env.SECRET_ACCESS_KEY,
    //这里以华北-北京四为例,其他地区请按实际情况填写
    server: 'https://obs.cn-north-4.myhuaweicloud.com'
    
});

// 调用接口进行操作,例如下载对象
obsClient.getObject({
       Bucket : 'bucketname',
       Key : 'objectname',
}, (err, result) => {
       if(!err){
              if(result.CommonMsg.Status < 300){
                     // 获取RequestId
                     console.log('RequestId-->' + result.InterfaceResult.RequestId);
                     // 获取其他参数
                     console.log('Content-->' + result.InterfaceResult.Content.toString());
              }else{
                     // 获取Code和Message
                     console.log('Code-->' + result.CommonMsg.Code); 
                     console.log('Message-->' + result.CommonMsg.Message);
              }
       }
});
分享:

    相关文档

    相关产品