96 lines
3.6 KiB
Python
96 lines
3.6 KiB
Python
# -*- coding: utf-8 -*-
|
||
# This file is auto-generated, don't edit it. Thanks.
|
||
import os
|
||
import sys
|
||
import json
|
||
|
||
from typing import List
|
||
|
||
from alibabacloud_dypnsapi20170525.client import Client as Dypnsapi20170525Client
|
||
from alibabacloud_credentials.client import Client as CredentialClient
|
||
from alibabacloud_credentials.models import Config as CredentialConfig # 补充正确导入
|
||
from alibabacloud_tea_openapi import models as open_api_models
|
||
from alibabacloud_dypnsapi20170525 import models as dypnsapi_20170525_models
|
||
from alibabacloud_tea_util import models as util_models
|
||
from alibabacloud_tea_util.client import Client as UtilClient
|
||
|
||
|
||
class Sample:
|
||
def __init__(self):
|
||
pass
|
||
|
||
@staticmethod
|
||
def create_client() -> Dypnsapi20170525Client:
|
||
"""
|
||
使用凭据初始化账号Client
|
||
@return: Client
|
||
@throws Exception
|
||
"""
|
||
# 方案1:直接传入明文AK/SK(测试用,生产环境禁止)
|
||
credentialsConfig = CredentialConfig(
|
||
type='access_key',
|
||
# 直接传入明文AccessKey ID(替换为你的真实AK)
|
||
access_key_id='LTAI5tAxWRqns3nK8kR6PsMW',
|
||
# 直接传入明文AccessKey Secret(替换为你的真实SK)
|
||
access_key_secret='tZ7ZAn7k1vkY4amavGeloEU0JzHIsb'
|
||
)
|
||
credentialsClient = CredentialClient(credentialsConfig)
|
||
|
||
# 可选:获取凭证详情(普通AK的security_token为None,不影响使用)
|
||
credential = credentialsClient.get_credential()
|
||
access_key_id = credential.get_access_key_id()
|
||
access_key_secret = credential.get_access_key_secret()
|
||
security_token = credential.get_security_token()
|
||
|
||
# 配置OpenAPI,替换占位符为真实Endpoint
|
||
config = open_api_models.Config(
|
||
credential=credentialsClient,
|
||
endpoint='dypnsapi.aliyuncs.com' # 修正:真实短信验证端点
|
||
)
|
||
return Dypnsapi20170525Client(config)
|
||
|
||
@staticmethod
|
||
def main(
|
||
args: List[str],
|
||
) -> None:
|
||
client = Sample.create_client()
|
||
send_sms_verify_code_request = dypnsapi_20170525_models.SendSmsVerifyCodeRequest(
|
||
sign_name='速通互联验证码',
|
||
template_code='100001',
|
||
phone_number='17536133913',
|
||
template_param='{"code":"##code##","min":"5"}'
|
||
)
|
||
runtime = util_models.RuntimeOptions()
|
||
try:
|
||
resp = client.send_sms_verify_code_with_options(send_sms_verify_code_request, runtime)
|
||
print(json.dumps(resp, default=str, indent=2))
|
||
except Exception as error:
|
||
# 增强:避免空指针异常
|
||
print(error.message)
|
||
if error.data:
|
||
print(error.data.get("Recommend"))
|
||
|
||
@staticmethod
|
||
async def main_async(
|
||
args: List[str],
|
||
) -> None:
|
||
client = Sample.create_client()
|
||
send_sms_verify_code_request = dypnsapi_20170525_models.SendSmsVerifyCodeRequest(
|
||
sign_name='速通互联验证码',
|
||
template_code='100001',
|
||
phone_number='19922573675',
|
||
template_param='{"code":"##code##","min":"5"}'
|
||
)
|
||
runtime = util_models.RuntimeOptions()
|
||
try:
|
||
resp = await client.send_sms_verify_code_with_options_async(send_sms_verify_code_request, runtime)
|
||
print(json.dumps(resp, default=str, indent=2))
|
||
except Exception as error:
|
||
# 增强:避免空指针异常
|
||
print(error.message)
|
||
if error.data:
|
||
print(error.data.get("Recommend"))
|
||
|
||
|
||
if __name__ == '__main__':
|
||
Sample.main(sys.argv[1:]) |