本文以 Python SDK V2.0 为例,演示如何调用云监控2.0(cms20240330)OpenAPI。其他接口的调用方法类似,仅需替换 Request/Response 类型与字段。
环境要求
Python 3.7 及以上。
安装方式
通过 pip 安装:
pip install alibabacloud_cms20240330==10.0.0配置访问凭据
工程代码建议使用更安全的无 AK 方式,凭据配置方式请参见管理访问凭据。最简单的做法是在系统环境变量中配置:
export ALIBABA_CLOUD_ACCESS_KEY_ID="<your-access-key-id>"
export ALIBABA_CLOUD_ACCESS_KEY_SECRET="<your-access-key-secret>"CredentialClient() 会按照默认凭据链顺序查找凭据。
完整代码示例
以下示例调用 GetCmsService 接口,查询云监控2.0服务对应产品的开通状态:
# -*- coding: utf-8 -*-
import os
import sys
import json
from typing import List
from alibabacloud_cms20240330.client import Client as Cms20240330Client
from alibabacloud_credentials.client import Client as CredentialClient
from alibabacloud_tea_openapi import models as open_api_models
from alibabacloud_cms20240330 import models as cms_20240330_models
from alibabacloud_tea_util import models as util_models
class Sample:
def __init__(self):
pass
@staticmethod
def create_client() -> Cms20240330Client:
"""
使用凭据初始化账号 Client
"""
# 工程代码建议使用更安全的无 AK 方式。
credential = CredentialClient()
config = open_api_models.Config(credential=credential)
# Endpoint 请参考 https://api.aliyun.com/product/Cms
config.endpoint = 'metrics.cn-hangzhou.aliyuncs.com'
return Cms20240330Client(config)
@staticmethod
def main(args: List[str]) -> None:
client = Sample.create_client()
request = cms_20240330_models.GetCmsServiceRequest(
product='your_value',
service='your_value',
)
headers = {}
try:
resp = client.get_cms_service_with_options(request, headers, util_models.RuntimeOptions())
print(json.dumps(resp, default=str, indent=2))
except Exception as error:
# 错误 message
print(error.message)
# 诊断地址
print(error.data.get("Recommend"))
if __name__ == '__main__':
Sample.main(sys.argv[1:])步骤介绍
初始化配置对象
alibabacloud_tea_openapi.Config。Config 对象存放 credential、endpoint 等配置,Endpoint 如示例中的metrics.cn-hangzhou.aliyuncs.com。from alibabacloud_tea_openapi import models as open_api_models from alibabacloud_credentials.client import Client as CredentialClient credential = CredentialClient() config = open_api_models.Config(credential=credential) config.endpoint = 'metrics.cn-hangzhou.aliyuncs.com'实例化客户端:
from alibabacloud_cms20240330.client import Client as Cms20240330Client from alibabacloud_cms20240330 import models as cms_20240330_models client = Cms20240330Client(config)创建对应 API 的 Request:
request = cms_20240330_models.GetCmsServiceRequest()设置请求参数:
request.product = 'your_value' request.service = 'your_value'调用接口:
response = client.get_cms_service(request) print(response)从 response 读取返回值,例如:
request_id = response.body.request_id print(request_id)使用
try...except...处理报错:try: response = client.get_cms_service(request) except Exception as e: print(e)
更多接口与示例代码可在 OpenAPI 门户 SDK 示例 查看。
该文章对您有帮助吗?