错误处理
更新时间:2024-07-05
GO语言以error类型标识错误,CFC支持两种错误见下表:
错误类型 | 说明 |
---|---|
CFCClientError | 用户操作产生的错误 |
BceServiceError | CFC服务返回的错误 |
用户使用SDK调用CFC相关接口,除了返回所需的结果之外还会返回错误,用户可以获取相关错误进行处理。实例如下:
// cfcClient 为已创建的CFC Client对象
args := &api.GetFunctionArgs{
FunctionName: "functionName"
}
result, err := cfcClient.GetFunction(args)
if err != nil {
switch realErr := err.(type) {
case *bce.BceClientError:
fmt.Println("client occurs error:", realErr.Error())
case *bce.BceServiceError:
fmt.Println("service occurs error:", realErr.Error())
default:
fmt.Println("unknown error:", err)
}
} else {
fmt.Println("get function detail success: ", result)
}
客户端异常
客户端异常表示客户端尝试向CFC发送请求以及数据传输时遇到的异常。例如,当发送请求时网络连接不可用时,则会返回BceClientError;当上传文件时发生IO异常时,也会抛出BceClientError。
服务端异常
当CFC服务端出现异常时,CFC服务端会返回给用户相应的错误信息,以便定位问题。常见服务端异常可参见CFC错误返回