SDK接入指南
描述
本文提供百度智能云文件存储 CFS SDK 的接入说明。当前 CFS SDK 已提供 Java、Go、Python 三种语言版本,开发者可根据项目技术栈选择对应 SDK 进行集成。
您可以前往 API Explorer 中调试相关接口。运行成功后,API Explorer 会自动生成 SDK 代码示例。
前置条件
在使用 CFS SDK 前,请确认已完成以下准备工作:
- 已注册百度智能云账号并完成实名认证。
- 已开通 CFS 服务。
- 已获取账号的 Access Key ID 和 Secret Access Key。
- 已根据所选语言准备对应运行环境和包管理工具。
说明:Access Key ID 和 Secret Access Key 获取方式请参考:如何获取AKSK。
Endpoint 说明
CFS SDK 通过 Endpoint 指定访问地域和环境。当前可配置的 Endpoint 如下:
| Region | Endpoint |
|---|---|
| 北京 | cfs.bj.baidubce.com |
| 保定 | cfs.bd.baidubce.com |
| 成都 | cfs.cd.baidubce.com |
| 广州 | cfs.gz.baidubce.com |
| 苏州 | cfs.su.baidubce.com |
| 武汉 | cfs.fwh.baidubce.com |
| 香港 | cfs.hkg.baidubce.com |
说明:SDK 初始化 Client 时需要显式配置 Endpoint。
Java SDK 接入
SDK 信息
- SDK 包名称:
baiducloud-java-sdk-cfs - SDK 包版本:
0.0.2 - SDK 包管理平台:Maven
环境要求
建议使用 Java 8 或以上版本,并使用 Maven 管理项目依赖。
安装方式
在 Maven 项目的 pom.xml 中添加如下依赖:
1<dependency>
2 <groupId>com.baidubce</groupId>
3 <artifactId>baiducloud-java-sdk-cfs</artifactId>
4 <version>0.0.2</version>
5</dependency>
SDK 示例
以下示例展示如何初始化 CFS Client,并调用 QueryFileSystem 接口为例,实际项目中可替换为 SDK 中已支持的任意 API。
1package com.baidu.sample;
2import com.baidubce.BceClientConfiguration;
3import com.baidubce.BceClientException;
4import com.baidubce.auth.DefaultBceCredentials;
5import com.baidubce.cfs.CfsClient;
6import com.baidubce.cfs.models.*;
7public class Example {
8 public static void main(String[] args) {
9 // 设置Client的Access Key ID和Secret Access Key,获取AKSK详见:https://cloud.baidu.com/doc/Reference/s/9jwvz2egb
10 String ak = "Your Ak";
11 String sk = "Your Sk";
12 String endpoint = "cfs.bj.baidubce.com";
13 BceClientConfiguration config = new BceClientConfiguration();
14 config.setCredentials(new DefaultBceCredentials(ak, sk));
15 config.setEndpoint(endpoint);
16 CfsClient client = new CfsClient(config);
17 QueryFileSystemRequest queryFileSystemRequest = new QueryFileSystemRequest();
18 try {
19 QueryFileSystemResponse response = client.queryFileSystem(queryFileSystemRequest);
20 System.out.println(response.toJsonString());
21 } catch (BceClientException e) {
22 System.out.println(e.getMessage());
23 }
24 }
25}
Go SDK 接入
SDK 信息
- SDK 包名称:
baiducloud-go-sdk - SDK 包版本:
v0.0.52 - SDK 包管理平台:GitHub
环境要求
建议使用 Go 1.14 或以上版本,并使用 Go Modules 管理项目依赖。
安装方式
在项目目录下执行以下命令安装 SDK:
1go get github.com/baidubce/baiducloud-go-sdk@v0.0.52
SDK 示例
以下示例展示如何初始化 CFS Client,并调用 QueryFileSystem 接口为例,实际项目中可替换为 SDK 中已支持的任意 API。
1package main
2import (
3 "fmt"
4 "encoding/json"
5 "github.com/baidubce/baiducloud-go-sdk/services/cfs"
6)
7func main() {
8 // 设置Client的Access Key ID和Secret Access Key,获取AKSK详见:https://cloud.baidu.com/doc/Reference/s/9jwvz2egb
9 ak := "Your Ak"
10 sk := "Your Sk"
11 endpoint := "cfs.bj.baidubce.com"
12 client, err := cfs.NewClient(ak, sk, endpoint)
13 if err != nil {
14 fmt.Println("create client err:", err)
15 return
16 }
17 queryFileSystemRequest := &cfs.QueryFileSystemRequest{
18 }
19 result := &cfs.QueryFileSystemResponse{}
20 result, err = client.QueryFileSystem(queryFileSystemRequest)
21 if err != nil {
22 // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。
23 fmt.Println("request failed:", err)
24 return
25 }
26 data, err := json.MarshalIndent(result, "", " ")
27 if err != nil {
28 fmt.Println("json marshalIndent failed:", err)
29 return
30 }
31 fmt.Println(string(data))
32}
Python SDK 接入
SDK 信息
- SDK 包名称:
baiducloud-python-sdk-cfs - SDK 包版本:
0.0.2 - SDK 包管理平台:PyPI
环境要求
建议使用 Python 3,并使用 pip 管理项目依赖。
安装方式
执行以下命令安装 SDK:
1pip install baiducloud-python-sdk-cfs==0.0.2
SDK 示例
以下示例展示如何初始化 CFS Client,并调用 QueryFileSystem 接口为例,实际项目中可替换为 SDK 中已支持的任意 API。
1from baiducloud_python_sdk_core import exception
2from baiducloud_python_sdk_core.auth.bce_credentials import BceCredentials
3from baiducloud_python_sdk_core.bce_client_configuration import BceClientConfiguration
4from baiducloud_python_sdk_cfs.api.cfs_client import CfsClient
5from baiducloud_python_sdk_cfs import models as cfs_models
6if __name__ == '__main__':
7 try:
8 # 设置Client的Access Key ID和Secret Access Key,获取AKSK详见:https://cloud.baidu.com/doc/Reference/s/9jwvz2egb
9 access_key_id = "Your Ak"
10 secret_access_key = "Your Sk"
11 endpoint = "cfs.bj.baidubce.com"
12 config = BceClientConfiguration(credentials=BceCredentials(access_key_id, secret_access_key), endpoint=endpoint)
13 client = CfsClient(config)
14 request = cfs_models.QueryFileSystemRequest(
15 )
16 res = client.query_file_system(request)
17 print(res.to_json_string())
18 except exception.BceHttpClientError as e:
19 # 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。
20 print(e.last_error)
21 print(e.request_id)
22 print(e.code)
凭证配置建议
实际工程项目中不建议将 AK/SK 明文写入代码或提交到代码仓库,建议通过以下方式管理访问凭证:
- 使用环境变量或配置中心注入 AK/SK。
- 对配置文件进行权限控制,避免凭证泄漏。
- 定期轮换 AK/SK。
- 不在日志、异常信息或调试输出中打印敏感凭证。
异常处理建议
实际工程项目中建议根据业务场景完善异常处理逻辑,例如:
- 记录必要的错误码、请求 ID 和错误信息,便于问题排查。
- 对可重试错误增加重试机制。
- 对鉴权失败、参数错误等不可重试错误进行明确提示。
- 避免直接忽略异常或仅打印异常后继续执行关键流程。
API 替换说明
本文示例使用 QueryFileSystem 接口演示 SDK 调用流程。接入其他 CFS API 时,建议前往 API Explorer 中调试相关接口。运行成功后,API Explorer 会自动生成 SDK 代码示例。
评价此篇文章
