Python SDK调用示例

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

步骤一:查看OpenAPI文档

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

步骤二:创建RAM用户并完成授权

重要

阿里云账号拥有所有API的访问权限,建议您创建并使用RAM用户进行API访问或日常运维。

您可以使用阿里云账号(主账号)、RAM用户、RAM角色调用该接口,有关各种身份的差异请参见身份

本案例中,我们使用RAM用户进行接口调用。

  1. 创建RAM用户

    1. 登录RAM访问控制

    2. 在左侧导航栏,选择身份管理 > 用户

    3. 用户页面,单击创建用户

    4. 创建用户页面,设置登录名称显示名称访问方式控制台访问

    5. 单击确定

      创建RAM用户成功后,请记录用户登录名称和密码,您在调用OpenAPI时,需要使用该RAM用户登录阿里云OpenAPI开发者门户。

  2. 为RAM用户授权

    说明

    AliyunDyplsReadOnlyAccess:只读访问号码隐私保护服务的权限。

    AliyunDyplsFullAccess:管理号码隐私保护服务的权限。

    如果您需要新建自定义权限,请参见授权信息

    1. 访问RAM用户列表

    2. 单击目标RAM用户操作列的添加权限

    3. 在文本框中搜索Aliyundypls,选择AliyunDyplsReadOnlyAccess策略。

    4. 单击确认新增授权,完成授权操作。

  3. 进入到对应的RAM用户详情页,在认证管理页签,点击创建 AccessKey

    更多操作详情,请参见创建AccessKey

步骤三:调用OpenAPI

本文以Python语言SDK调用OpenAPI为例,其他语言SDK的用法也类似,更多信息请参见号码隐私保护SDK。您也可根据业务的实际需要选择其他调用方式,更多调用方法请参见调用方式

准备Python环境

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

说明

调用接口前需配置环境变量,通过环境变量读取访问凭证。

AccessKey ID和AccessKey Secret的环境变量名:SECRET_AK_ENV 、SECRET_SK_ENV。配置详情请参见在Linux、macOS和Windows系统配置环境变量

安装依赖

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

pip3 install alibabacloud_credentials
pip install alibabacloud_dyplsapi20170525
pip3 install alibabacloud_tea_console

下载示例代码

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

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

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

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

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

运行代码

执行以下命令:

python sample.py

返回示例如下:

 [
        LOG
    ] {
        "headers": {
            "date": "Fri, 07 Jul 2023 07:07:52 GMT", 
            "content-type": "application/json;charset=utf-8", 
            "content-length": "115", 
            "connection": "keep-alive", 
            "keep-alive": "timeout=25", 
            "access-control-allow-origin": "*", 
            "access-control-expose-headers": "*", 
            "x-acs-request-id": "8C87CFDC-F3EF-55E3-9661-BCBA1FF3****", 
            "x-acs-trace-id": "4ef68ba273fa232c203d83737198****", 
            "etag": "1P+Uo9nOE01KYKLpAKl1****"
        }, 
            
        "statusCode": 200,
        "body": {
            {
                "SecretBindDTO": {
                    "Extension": "1998320****",
                    "SecretNo": "1705552****",
                    "SubsId": "100011****464511"
                },
                "Message": "OK",
                "RequestId": "4A2568E1-7D83-5491-8DEF-600D8AFF97E7",
                "Code": "OK"
                }
            }
        }