错误处理
更新时间:2026-09-24
Go 语言以 error 类型标识错误。使用 Go SDK 调用 CFC 相关接口时,除了返回所需结果之外,还会返回错误对象,用户可以根据错误类型进行处理。CFC 支持两种错误:
| 错误类型 | 说明 |
|---|---|
| BceClientError | 用户操作产生的错误。 |
| BceServiceError | CFC 服务返回的错误。 |
以下示例以调用已存在函数 GetFunction 为例。成功时返回函数详情,失败时可按错误类型分别处理:
Go
1package main
2
3import (
4 "fmt"
5
6 "github.com/baidubce/bce-sdk-go/bce"
7 "github.com/baidubce/bce-sdk-go/services/cfc"
8 "github.com/baidubce/bce-sdk-go/services/cfc/api"
9)
10
11func main() {
12 ak := "your-access-key-id"
13 sk := "your-secret-access-key"
14 endpoint := "your-cfc-endpoint"
15
16 cfcClient, err := cfc.NewClient(ak, sk, endpoint)
17 if err != nil {
18 fmt.Println("create cfc client failed:", err)
19 return
20 }
21
22 args := &api.GetFunctionArgs{
23 FunctionName: "functionName",
24 }
25
26 result, err := cfcClient.GetFunction(args)
27 if err != nil {
28 switch realErr := err.(type) {
29 case *bce.BceClientError:
30 fmt.Println("client occurs error:", realErr.Error())
31 case *bce.BceServiceError:
32 fmt.Println("service occurs error:", realErr.Error())
33 default:
34 fmt.Println("unknown error:", err)
35 }
36 return
37 }
38
39 fmt.Println("get function detail success:", result)
40}
客户端异常
客户端异常表示客户端尝试向CFC发送请求以及数据传输时遇到的异常。例如,当发送请求时网络连接不可用时,则会返回BceClientError;当上传文件时发生IO异常时,也会抛出BceClientError。
服务端异常
当CFC服务端出现异常时,CFC服务端会返回给用户相应的错误信息,以便定位问题。常见服务端异常可参见CFC错误返回
评价此篇文章
