开发者学堂课程【全面讲解 Spring Cloud Alibaba 技术栈(知识精讲+项目实战)第四阶段:短信服务介绍】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/686/detail/11913
短信服务介绍
1、短信服务
短信的发送是需要服务支持的
短信服务(Short MessageService)是阿里云为用户提供的一种通信服务的能力。
产品优势:覆盖全面、高并发处理、消息堆积处理、开发管理简单、智能监控调度
产品功能:短信通知、短信验证码、推广短信、异步通知、数据统计
应用场景:短信验证码、系统信息推送、推广短信等
2、基本流程
首先要弄明白短信是由谁来发送,短信的发送主要是由运营商来完成的,在国内有三大短信运营商分别是移动、联通、电信,会负责向用户的手机来发送短信,接下来发送短信需要有程序去调用,如果有一个 Java 平台,应该去调用三大运营商,然后分别向手机上发短信,
调用三大运营商分别向手机上发短信,直接调用的有一些问题,比方要直接调动,手机号过来要判断一下手机号是移动的、联通的还是电信的。第二个移动,联通和电信提供出来的对外调用接口不是完全一样的,预示着账号平台里面要写三部分代码分别去调用。第三个去调用发短信要收费,意味着要在三大运营商里分别去开设一个账户,然后还要去发送认证的密钥,是非常麻烦的。
需要有一个中间平台站出来,这个平台就是阿里云短信服务,服务平台做的事情很简单就是把三个接口封装一下,对外只提供一个接口,经过转化以后对外公布就变成了一个接口。
作为账号平台不用管手机号是联通、移动还是电信,直接调用阿里云把手机号传过去,不会去做这些判断,也就意味着用阿里云以后,所做的事情需要告诉阿里云手机号,还需要告诉要发送的验证码,除了这两个还要告诉发送的短信使用哪一个模板,短信模板还要发送认证信息,因为发送一条短信阿里云平台要给运营商钱,所以阿里云会扣钱,扣钱就涉及到认证,
在认证之前意味着需要先来开户,开完户才能认证,开完户还要充值钱才能扣,这是基本的流程。
账号平台在里面需要做的是生产验证码,然后告诉阿里云服务手机号、验证码以及使用的模板和认证信息,阿里云拿到一套东西以后,判断账户里面是否有钱,如果有钱接下来会判断调用的手机号是哪一个平台,在相应的平台上去发送短信,短信就会发送到手机上。