Python

最近更新时间:11/9/2023, 4:16:11 PM作者:andrewren(任豪)

简介

  • 本文以 Python SDK 为例,介绍如何使用、调试并接入工业云 OpenAPI。

依赖环境

  • 获取安全凭证。安全凭证包含 SecretId 及 SecretKey 两部分。SecretId 用于标识 API 调用者的身份,SecretKey 用于加密签名字符串和服务器端验证签名字符串的密钥,获取密钥需向工业云申请获取。

!您的安全凭证切勿泄露他人。

  • 获取调用地址。调用地址(endpoint)一般形式为*.{工业环境域名},模块的调用地址有一定区别,例如,商品的调用地址为product-mgmt-api.{工业环境域名},具体调用地址可参考对应的 API 文档

安装 SDK

通过源码安装

前往 SDK 托管地址 下载最新代码,解压后使用。

使用 SDK

每个接口都有一个对应的 Request 结构和一个 Response 结构。例如,商品的查询商品列表接口 DescribeProducts 有对应的请求结构体 DescribeProductRequest 和返回结构体 DescribeProductResponse。

下面以查询商品列表接口为例,介绍 SDK 的基础用法。出于演示目的,有一些非必要的内容也在示例中,以尽量展示 SDK 常用的功能,但也显得臃肿,在实际编写代码使用 SDK 的时候,应尽量简化。

示例1:商品列表(DescribeAccounts)

from tencentcloud.common import credential
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
from iam.v20200525 import iam_client, models
from tencentcloud.common.profile.client_profile import ClientProfile
from tencentcloud.common.profile.http_profile import HttpProfile

try:

#实例化一个认证对象,入参需要传入腾讯云账户secretId,secretKey

cred = credential.Credential("secretId", "secretKey")

#实例化一个http选项,可选的,没有特殊需求可以跳过。

httpProfile = HttpProfile()
httpProfile.scheme = "http"
httpProfile.reqMethod = "POST"  # post请求(默认为post请求)
httpProfile.reqTimeout = 30  # 请求超时时间,单位为秒(默认60秒)
httpProfile.endpoint = "iam-api.industry-tiyan.xyz"  # 指定接入地域域名(默认就近接入)
httpProfile.keepAlive = True

# 实例化一个client选项,可选的,没有特殊需求可以跳过。

clientProfile = ClientProfile()
clientProfile.signMethod = "TC3-HMAC-SHA256"  # 指定签名算法(默认为HmacSHA256)
clientProfile.unsignedPayload = False
clientProfile.language = "zh-CN"
clientProfile.httpProfile = httpProfile

client = iam_client.IamClient(cred, "ap-guangzhou", clientProfile)
req = models.DescribeAccountsRequest()
req.AccountIds = ["123456789"]
resp = client.DescribeAccounts(req)

# 输出json格式的字符串回包

print("%s" % resp)

except TencentCloudSDKException as err:
print("%s" % err)

!此过程会真实发送请求,请不要测试消费等接口,以免造成财产损失

更多示例

您可以在 SDK 中的examples目录下获取更多详细的示例。