tencent cloud

文档反馈

异常处理

最后更新时间:2024-01-04 17:06:08

    简介

    SDK 调用失败时,结果信息包含在 API 返回的 cos_status_t 结构中。
    SDK 中使用每一个 API 的正确做法如下所示,为了简要,文档中范例不再给出具体异常的处理,仅给出 API 的使用范例。
    cos_status_t *s = NULL;
    s = cos_put_object_from_file(options, &bucket, &object, &file, &headers, &resp_headers);
    if (!s && !cos_status_is_ok(s)) {
    // 按需要进行异常场景的日志输出和处理
    cos_warn_log("failed to put object from file", buf);
    if (s->error_code) cos_warn_log("status->error_code: %s", s->error_code);
    if (s->error_msg) cos_warn_log("status->error_msg: %s", s->error_msg);
    if (s->req_id) cos_warn_log("status->req_id: %s", s->req_id);
    }

    客户端异常

    当 cos_status_t 结构中 code 成员值小于0时,表明发生 SDK 本地客户端错误,错误码信息参考枚举 cos_error_code_e 定义。
    typedef enum {
    COSE_OK = 0,
    COSE_OUT_MEMORY = -1000,
    COSE_OVER_MEMORY = -999,
    COSE_FAILED_CONNECT = -998,
    COSE_ABORT_CALLBACK = -997,
    COSE_INTERNAL_ERROR = -996,
    COSE_REQUEST_TIMEOUT = -995,
    COSE_INVALID_ARGUMENT = -994,
    COSE_INVALID_OPERATION = -993,
    COSE_CONNECTION_FAILED = -992,
    COSE_FAILED_INITIALIZE = -991,
    COSE_NAME_LOOKUP_ERROR = -990,
    COSE_FAILED_VERIFICATION = -989,
    COSE_WRITE_BODY_ERROR = -988,
    COSE_READ_BODY_ERROR = -987,
    COSE_SERVICE_ERROR = -986,
    COSE_OPEN_FILE_ERROR = -985,
    COSE_FILE_SEEK_ERROR = -984,
    COSE_FILE_INFO_ERROR = -983,
    COSE_FILE_READ_ERROR = -982,
    COSE_FILE_WRITE_ERROR = -981,
    COSE_XML_PARSE_ERROR = -980,
    COSE_UTF8_ENCODE_ERROR = -979,
    COSE_CRC_INCONSISTENT_ERROR = -978,
    COSE_FILE_FLUSH_ERROR = -977,
    COSE_FILE_TRUNC_ERROR = -976,
    COSE_UNKNOWN_ERROR = -100
    } cos_error_code_e;

    服务端异常

    当 cos_status_t 结构中 code 成员值大于0时,表明发生网络侧错误。
    以下是 cos_status_t 结构的描述:
    cos_status_t 成员
    描述
    类型
    code
    response 的 status 状态码, 4xx 是指请求因客户端而失败, 5xx 是服务端异常导致的失败,详情请参见 错误码 文档
    Int
    error_code
    请求失败时 body 返回的 Error Code,详情请参见 错误码 文档
    String
    error_msg
    请求失败时 body 返回的 Error Message,详情请参见 错误码 文档
    String
    req_id
    请求 ID,用于标识用户唯一请求
    String
    

    使用自助诊断工具

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

    使用步骤

    1. 复制异常处理返回的 RequestId(请求 ID)。
    2. 单击 COS 自助诊断工具,进入自助诊断页面。
    
    3. 在顶部的 RequestId 输入框中,输入待诊断的 RequestId,并单击开始诊断
    4. 稍侯片刻,便能看到相应的智能诊断结果。
    联系我们

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

    技术支持

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

    7x24 电话支持