首页 文件存储 CPFS 开发参考 OpenAPI集成示例(SDK)

OpenAPI集成示例(SDK)

更新时间: 2023-08-24 18:17:58

本文以Python语言为例,为您介绍如何使用阿里云OpenAPI的SDK开发包。

查看OpenAPI文档

在调用OpenAPI前,建议您阅读对应接口文档,了解、学习调用该接口所需要的参数及权限等,更多详情请参见API概览

创建RAM用户并授权

说明
  • 您可以通过阿里云账号(主账号)、RAM用户、RAM角色调用该接口,有关各种身份的差异,请参见身份、凭证、授权。本案例中,我们使用RAM用户进行接口调用。

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

  1. 创建RAM用户。

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

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

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

  2. 完成授权。

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

    2. 在文本框中搜索AliyunNAS,选择AliyunNASReadOnlyAccess策略。

      重要

      AliyunNASFullAccess拥有实际的操作权限,您也可以按需选择AliyunNASReadOnlyAccess权限(具有访问、查看权限)或进行自定义策略,更多信息,请参见使用RAM权限策略控制NAS访问权限

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

调用OpenAPI

本文以阿里云Python语言SDK方式调用OpenAPI为例,其他语言SDK的用法也类似,更多信息请参见文件存储(NAS/CPFS)SDK

准备Python环境

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

配置环境变量

为避免将AccessKey硬编码到业务代码中带来的安全风险,本示例采用配置环境变量的方法管理AccessKey。如何获取RAM用户账号的AccessKey ID和AccessKey Secret,请参见查看RAM用户的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_nas20170626==2.0.3
pip3 install alibabacloud_tea_console

下载示例代码

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

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

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

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

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

运行代码

执行以下命令:

python sample.py

返回示例如下:

{
    "headers":{
        "date":"Wed, 26 Jul 2023 09:03:41 GMT",
        "content-type":"application/json;charset=utf-8",
        "content-length":"1033",
        "connection":"keep-alive",
        "keep-alive":"timeout=25",
        "vary":"Accept-Encoding",
        "access-control-allow-origin":"*",
        "access-control-expose-headers":"*",
        "x-acs-request-id":"31BF0F2B-9C5F-5FD3-88FA-60621657****",
        "x-acs-trace-id":"5842784c3ae9fe9bdcb255bfaa61****",
        "etag":"14PmeGvuG5exKT8M004b****"
    },
    "body":{
        "PageNumber":1,
        "RequestId":"31BF0F2B-9C5F-5FD3-88FA-60621657****",
        "PageSize":10,
        "TotalCount":1,
        "FileSystems":{
            "FileSystem":[
                {
                    "Status":"Running",
                    "Capacity":10485760,
                    "MeteredIASize":0,
                    "CreateTime":"2023-07-24T11:36:17CST",
                    "ChargeType":"PayAsYouGo",
                    "StorageType":"Capacity",
                    "RegionId":"cn-hangzhou",
                    "FileSystemType":"standard",
                    "FileSystemId":"197df64****",
                    "MeteredSize":10625024,
                    "EncryptType":0,
                    "Description":"test",
                    "ExpiredTime":"",
                    "ZoneId":"cn-hangzhou-g",
                    "ProtocolType":"NFS",
                    "KMSKeyId":"",
                    "MountTargets":{
                        "MountTarget":[
                            {
                                "VpcId":"vpc-2vc1h319fodms9p76****",
                                "Status":"Active",
                                "MountTargetDomain":"197df64****-j****.cn-hangzhou.nas.aliyuncs.com",
                                "AccessGroupName":"DEFAULT_VPC_GROUP_NAME",
                                "VswId":"vsw-2vcapqvrrxjn15n0m****",
                                "NetworkType":"vpc",
                                "ClientMasterNodes":{
                                    "ClientMasterNode":[

                                    ]
                                },
                                "Tags":{
                                    "Tag":[

                                    ]
                                }
                            }
                        ]
                    },
                    "Packages":{
                        "Package":[

                        ]
                    },
                    "SupportedFeatures":{
                        "SupportedFeature":[
                            "Lifecycle",
                            "Quota",
                            "Acl"
                        ]
                    },
                    "Ldap":{

                    }
                }
            ]
        }
    }
}
阿里云首页 文件存储 CPFS 相关技术圈