前言
我们在开发基于MemfireDB的Memfire Cloud数据库云服务时,用户注册的手机验证码使用的是阿里的sms服务,这里简单介绍一下如何使用Python调用阿里云短信接口,先上一些资源链接:
首先是免费次数申请链接:https://free.aliyun.com/product/cloudcommunication-free-trial。个人用户可以获得100次免费调用次数,企业用户则是200次,测试阶段不妨蹭一下这个免费额度。
接下来是如何开通短信服务的指导文档:阿里云短信服务文档使用指引 ,按照这个文档基本上就能搞定开通步骤了,值得注意的是,这个指引文档中关于SDK和Demo的链接是比较老的,建议参考最新的文档页面:OpenAPI 开发者门户
Python的示例代码
#!/usr/bin/env python
#coding=utf-8
from aliyunsdkcore.client import AcsClient
from aliyunsdkcore.acs_exception.exceptions import ClientException
from aliyunsdkcore.acs_exception.exceptions import ServerException
from aliyunsdkdysmsapi.request.v20170525.SendSmsRequest import SendSmsRequest
# 需要填写正确的accesskey id和secretkey id
client = AcsClient('<accessKeyId>', '<accessSecret>', 'cn-qingdao')
request = SendSmsRequest()
request.set_accept_format('json')
# 要发送验证码的手机号,可以是多个,用逗号隔开
request.set_PhoneNumbers("phone_num")
# 短信签名,这个是前面的指导文章中提到的 创建短信签名 步骤中创建的签名
request.set_SignName("test")
# 这是模板,系统自带了一些基本的,可以根据这些基本的模板创建自己的新模板
request.set_TemplateCode("SMS_212565352")
# 模板中可以配置参数,通过这里传递参数的实际值
request.set_TemplateParam("{\"code\":\"323231\"}")
response = client.do_action_with_exception(request)
需要注意的几个点
- 短信签名和新建模板都是需要人工审核的,因此需要按照官方的规范填写,否则会被打回。
- 权限配置步骤千万不要忘记了,否则接口调用会报错没有权限,参考:点击访问权限控制
- 阿里云提供了比较基本的防盗刷能力,配置参考:如何防范被盗刷


「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




