使用OpenAPI示例(SDK)

本文以Python语言为例,为您介绍如何使用OpenAPI查询数据库文件系统列表的完整示例。

查看OpenAPI文档

通过阅读API概览得知,查询数据库文件系统列表的OpenAPI为ListDbfs。请您根据文档,了解调用该接口需要准备的数据和权限。

创建RAM用户并完成授权

说明

如您已创建RAM用户且已完成授权,可跳过此步骤。

  1. 创建RAM用户。

    1. 访问RAM用户列表,单击创建用户。

    2. 设置登录名称为dbfs-openapi-operator,选择访问方式OpenAPI调用访问

    3. 单击确定,创建RAM用户并保存AccessKey ID与AccessKey Secret信息。

  2. 完成授权。

    1. 访问RAM用户列表,单击目标RAM用户操作列的添加权限

    2. 在文本框中搜索AliyunDBFS,选择AliyunDBFSReadOnlyAccess策略。

      重要

      AliyunDBFSFullAccess拥有实际的操作权限,您也可以按需选择AliyunDBFSReadOnlyAccess权限(具有访问、查看权限)或进行自定义策略。

    3. 单击确定,完成授权操作。

调用OpenAPI

本文以Python语言为例,为您介绍OpenAPI的调用方法。其他语言SDK的用法也类似,更多信息请参见数据库文件存储SDK

准备Python环境

下载并安装Python 3。如您已安装Python,查看Python版本的命令示例:python --version

配置环境变量

为避免将AccessKey硬编码到业务代码中带来的安全风险,本示例采用配置环境变量的方法管理AccessKey。

  • Linux和macOS系统

    将以下命令中的<access_key_id><access_key_secret>替换为您自己的AccessKey ID和AccessKey Secret,输入到终端运行。

    export ALIBABA_CLOUD_ACCESS_KEY_ID=<access_key_id>
    export ALIBABA_CLOUD_ACCESS_KEY_SECRET=<access_key_secret>
  • Windows系统:

    1. 新建环境变量文件,添加环境变量ALIBABA_CLOUD_ACCESS_KEY_IDALIBABA_CLOUD_ACCESS_KEY_SECRET,并写入已准备好的AccessKey ID和AccessKey Secret。

    2. 重启Windows系统。

安装依赖

在终端设备中,逐条运行如下命令,安装环境依赖。

pip install alibabacloud_dbfs20200418==3.2.2
pip3 install alibabacloud_tea_console

下载示例代码

以下操作以调用ListDbfs接口为例,您可以在OpenAPI门户选择需要调用的接口。

  1. 访问ListDbfs,进入该接口在OpenAPI门户的调试地址。

  2. 在左侧的参数配置页签,填写需要的参数信息,本示例服务地址选择华东1(杭州)

  3. 在右侧的SDK示例页签,选择Python语言,单击下载完整工程按钮,下载示例代码包。

  4. 本地解压并进入alibabacloud_sample目录。

运行代码

执行以下命令:

python sample.py

返回示例如下:

{
    "headers":{
        "date":"Tue, 29 Aug 2023 09:29:26 GMT",
        "content-type":"application/json;charset=utf-8",
        "content-length":"712",
        "connection":"keep-alive",
        "keep-alive":"timeout=25",
        "access-control-allow-origin":"*",
        "access-control-expose-headers":"*",
        "x-acs-request-id":"D7C4D965-BB09-5511-98D3-73B20B7C****",
        "x-acs-trace-id":"2197b03a4f574d563d235b786123****",
        "etag":"7wZSDTchJP7sQjIK0CDu****"
    },
    "statusCode":200,
    "body":{
        "DBFSInfo":[
            {
                "AttachNodeNumber":0,
                "Category":"standard",
                "CreatedTime":1693299715000,
                "DBFSClusterId":"3c6e44c6-ddfe-4acc-a1b9-97e1302d****",
                "EbsList":[
                    {
                        "EbsId":"d-bp16if0mkkz8cnzi****",
                        "SizeG":20
                    }
                ],
                "EcsList":[

                ],
                "EnableRaid":false,
                "Encryption":false,
                "FsId":"dbfs-rgn6no98snav7cgw6v****",
                "FsName":"test",
                "InstanceType":"dbfs.medium",
                "KMSKeyId":"",
                "LastFailed":"",
                "PayType":"postpaid",
                "PerformanceLevel":"PL1",
                "RaidStrip":1,
                "RegionId":"cn-hangzhou",
                "SizeG":20,
                "SnapshotInfo":{
                    "LinkId":"-",
                    "PolicyId":"-",
                    "SnapshotCount":0,
                    "TotalSize":0
                },
                "Status":"unattached",
                "Tags":[

                ],
                "UsedScene":"MySQL 5.7",
                "ZoneId":"cn-hangzhou-i"
            }
        ],
        "PageNumber":1,
        "PageSize":10,
        "RequestId":"D7C4D965-BB09-5511-98D3-73B20B7C****",
        "TotalCount":1
    }
}