暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Python调用阿里云的短信接口

原创 isware 2021-03-26
3226

前言

我们在开发基于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进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论