52 lines
2.1 KiB
Python
52 lines
2.1 KiB
Python
#!/usr/bin/env python
|
||
# -*- coding: utf-8 -*-
|
||
# author: 'zfb'
|
||
# time: 2020-12-02 15:17
|
||
|
||
from tencentcloud.common import credential
|
||
# 导入可选配置类
|
||
from tencentcloud.common.profile.client_profile import ClientProfile
|
||
from tencentcloud.common.profile.http_profile import HttpProfile
|
||
from tencentcloud.common.exception.tencent_cloud_sdk_exception import TencentCloudSDKException
|
||
# 导入ssl产品模块的 client
|
||
from tencentcloud.ssl.v20191205 import ssl_client
|
||
# 导入cdn产品模块的 client
|
||
from tencentcloud.cdn.v20180606 import cdn_client
|
||
# 导入ecdn产品模块的 client
|
||
from tencentcloud.ecdn.v20191012 import ecdn_client
|
||
|
||
def get_client_instance(id, key, product):
|
||
'''获取指定endpoint的实例,用于后面对其的各种操作
|
||
'''
|
||
try:
|
||
# 实例化一个认证对象,入参需要传入腾讯云账户 secretId,secretKey, 此处还需注意密钥对的保密
|
||
cred = credential.Credential(id, key)
|
||
|
||
# 实例化一个 http 选项,可选
|
||
httpProfile = HttpProfile()
|
||
# post 请求 (默认为 post 请求)
|
||
httpProfile.reqMethod = "POST"
|
||
# 请求超时时间,单位为秒 (默认60秒)
|
||
httpProfile.reqTimeout = 30
|
||
# 不指定接入地域域名 (默认就近接入)
|
||
httpProfile.endpoint = "{}.tencentcloudapi.com".format(product)
|
||
|
||
# 实例化一个 client 选项,可选
|
||
clientProfile = ClientProfile()
|
||
clientProfile.httpProfile = httpProfile
|
||
# 实例化要请求产品的 client 对象,clientProfile 是可选的
|
||
if product == "ssl":
|
||
client = ssl_client.SslClient(cred, "", clientProfile)
|
||
print("实例化一个ssl_client成功")
|
||
elif product == "cdn":
|
||
client = cdn_client.CdnClient(cred, "", clientProfile)
|
||
print("实例化cdn client成功")
|
||
elif product == "ecdn":
|
||
client = ecdn_client.EcdnClient(cred, "", clientProfile)
|
||
print("实例化ecdn client成功")
|
||
else:
|
||
exit("本程序仅支持ssl、cdn、ecdn")
|
||
return client
|
||
except TencentCloudSDKException as err:
|
||
print(err)
|
||
exit(-1) |