Python SDK调用示例

本文介绍如何使用OpenAPI调用DescribeVerifyScheme接口获取认证方案详情的完整示例。

步骤一:查看 OpenAPI 文档

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

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

重要

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

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

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

  1. 创建RAM用户

    1. 登录RAM 访问控制

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

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

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

    5. 单击确定

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

  2. 为RAM用户授权。

    重要

    AliyunDypnsFullAccess:管理号码认证服务的权限。

    AliyunDypnsReadOnlyAccess:只读访问号码认证服务的权限。

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

    1. 访问RAM用户列表

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

    3. 在文本框中输入关键字Dypns进行搜索,选择AliyunDypnsFullAccess策略。

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

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

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

步骤三:调用 OpenAPI

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

准备 Python 环境

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

说明

调用接口前,需要配置环境变量,以便通过环境变量读取访问凭证。AccessKey ID和AccessKey Secret的环境变量名:VMS_AK_ENV 、VMS_SK_ENV。配置详情请参见在Linux、macOS和Windows系统配置环境变量

安装依赖

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

pip install alibabacloud_credentials
pip install alibabacloud_dypnsapi20170525
pip install alibabacloud_tea_console

下载示例代码

  1. 访问DescribeVerifyScheme

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

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

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

运行代码

执行以下命令

python sample.py

得到如下输出结果:

{
  "headers": {
    "date": "Tue, 04 Jul 2023 05:37:58 GMT",
    "content-type": "application/json;charset=utf-8",
    "content-length": "392",
    "connection": "keep-alive",
    "keep-alive": "timeout=25",
    "access-control-allow-origin": "*",
    "access-control-expose-headers": "*",
    "x-acs-request-id": "BC2766D5-CC72-5302-8091-1CEC6AF75***",
    "x-acs-trace-id": "b6dbcf003b020c6689f278520a480***",
    "etag": "3GiaUeTRBz/488MtwdjI+4g2"
  },
  "statusCode": 200,
  "body": {
    "Code": "OK",
    "Message": "OK",
    "RequestId": "BC2766D5-CC72-5302-8091-1CEC6AF756***",
    "SchemeQueryResultDTO": {
      "AppEncryptInfo": "***"
    }
  }
}