用 SpringBoot 和 AWS的 SNS服务 做了一个发送手机登陆验证码短信的demo。
资源参照: 我在这里.
技术
SpringBoot
AWS-SNS
Swagger2
lombok
要件
非常简单的要件,访问API,向指定的手机号发送一条信息。
通过starter生成模板程序
参照: Gradle的SpringBoot工程.
添加依赖关系
在build.gradle文件内添加依赖关系
AWS的关联依赖关系追加,参照: 将开发工具包与 Gradle 一起使用.
Swagger2的依赖包
// Swagger
compile 'io.springfox:springfox-swagger2:2.2.2'
compile 'io.springfox:springfox-swagger-ui:2.2.2'
compile "com.google.guava:guava:17.0"
lombok的依赖包
compile('org.projectlombok:lombok:1.16.6')
添加配置属性内容
应用属性指定
application.properties内添加端口以及log level指定
server.port=1234
#Log level
logging.level.root=INFO
logging.level.org.springframework.web=INFO
aws及其他内容指定
新作文件 application.yml ,内容为
swaggerui:
enabled: true
aws:
common:
local: true
credentialFile: awscredential.properties
region: ap-northeast-1
aws认证信息的指定
新作文件 awscredential.properties,内容为
具体的参数内容,根据自己的测试环境设置,安全上考虑,只为了单体测试,实际的AWS环境上,是由IAM角色控制权限
accessKey = XXXXX
secretKey = XXXXX
AWS认证信息服务
添加AWS认证信息mapping文件
AwsConfiguration.java
@Component
@Data
@ConfigurationProperties(prefix = "aws.common")
public class AwsConfiguration {
private boolean local;
private String credentialFile;
private String region;
}
添加获取AWS认证信息的服务
AwsAuthService.java
@Service
public class AwsAuthService {
@Autowired
private AwsConfiguration config;
public AWSCredentialsProvider getCredentialProvider() {
if (config.isLocal()

本文档介绍了如何利用SpringBoot结合AWS的SNS服务创建一个发送登录验证码短信的API。详细步骤包括添加依赖、配置属性、AWS认证、Swagger集成以及测试流程。最终实现的功能是在Swagger界面上输入电话号码,即可测试发送验证码。
最低0.47元/天 解锁文章
2062





