关于阿里云短信发送的一个问题

使用阿里云的短信服务时, 需要下载sdk, 现有以下两个版本的sdk:


aliyun-python-sdk-core-v3==2.9.1
aliyun-python-sdk-core-v3==2.8.6

在python3.6中使用短信服务的以下代码时:


REGION = "cn-hangzhou"
PRODUCT_NAME = "Dysmsapi"
DOMAIN = "dysmsapi.aliyuncs.com"

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'st.settings')

acs_client = AcsClient(settings.ACCESS_KEY_ID, settings.ACCESS_KEY_SECRET, REGION)
region_provider.add_endpoint(PRODUCT_NAME, REGION, DOMAIN)

如果使用的sdk版本是2.9.1,会出现以下错误:


module 'aliyunsdkcore.profile.region_provider' has no attribute 'add_endpoint'

将sdk版本换成2.8.6就可以了,因为2.9.1的sdk包中已经没有add_endpoint这个属性了。

还有一点需要注意,短信服务的开发指南 (https://help.aliyun.com/document_detail/68360.html?spm=a2c4g.11186623.6.596.28867cf6Iiefai) 中指出REGION参数的值需要根据服务器所在地域做相应调整。

以上就是使用阿里云短信服务时的一个注意点,如有错误,欢迎交流指正!