tencent cloud

文档反馈

异常处理

最后更新时间:2022-01-04 12:17:05

    简介

    API 返回 CosResult 结构,如果成功可以获取对应 Response 结构中的数据,失败可以通过 CosResult 获取详细信息。

    服务端异常

    CosResult 封装了请求出错时返回的错误码和对应错误信息,详情请参见 错误码

    注意:

    SDK 内部封装的请求均会返回 CosResult 对象,每次调用完成后,均要使用 IsSucc() 成员函数判断本次调用是否成功。

    成员函数

    函数 函数描述
    bool isSucc() 返回本次调用成功或失败
    当返回 false 时:后续的 CosResult 成员函数才有意义
    当返回 True 时:可以从 OperatorResp 中获取具体返回内容
    string GetErrorCode() 获取 COS 返回的错误码,用来确定错误场景
    string GetErrorMsg() 包含具体的错误信息
    string GetResourceAddr() 资源地址,Bucket 地址或 Object 地址
    string GetXCosRequestId() 当请求发送时,服务端将会自动为请求生成一个唯一的 ID。使用遇到问题时,request-id 能更快地协助 COS 定位问题
    string GetXCosTraceId() 当请求出错时,服务端将会自动为这个错误生成一个唯一的 ID,trace-id 与 request-id 一一对应。使用遇到问题时,trace-id 能更快地协助 COS 定位问题
    string GetErrorInfo() 获取 SDK 内部错误信息
    int GetHttpStatus() 获取 HTTP 状态码

    请求和响应基类

    BaseReq、BaseResp 封装了请求和返回, 调用者只需要根据不同的操作类型生成不同的 OperatorReq,并填充 OperatorReq 的内容即可。
    函数返回后,调用对应 BaseResp 的成员函数获取请求结果。

    • 对于 Request,如无特殊说明,仅需要关注 Request 的构造函数。
    • 对于 Response,所有方法的 Response 均有获取公共返回头部的成员函数。Response 的公共成员函数如下,具体字段含义请参见 公共返回头部,此处不再赘述。
    uint64_t GetContentLength();
    std::string GetContentType();
    std::string GetEtag();
    std::string GetConnection();
    std::string GetDate();
    std::string GetServer();
    std::string GetXCosRequestId(); //获取 RequestId,即请求 ID
    std::string GetXCosTraceId();
    

    使用自助诊断工具

    针对请求可能遇到不同的报错情况,我们为您提供了 COS 自助诊断工具,帮助您快速定位问题,调试报错代码。

    使用步骤

    1. 复制异常处理返回的 RequestId(请求 ID)。
    2. 单击 COS 自助诊断工具,进入自助诊断页面。
      COS 自助诊断工具
      点击自助诊断
      输入 RequestId 进行智能诊断,获取请求基本信息、帮助指引和诊断提示,快速定位请求错误。
    3. 在顶部的 RequestId 输入框中,输入待诊断的 RequestId,并单击开始诊断
    4. 稍侯片刻,便能看到相应的智能诊断结果。
    联系我们

    联系我们,为您的业务提供专属服务。

    技术支持

    如果你想寻求进一步的帮助,通过工单与我们进行联络。我们提供7x24的工单服务。

    7x24 电话支持