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