在这里插入图片描述

使用阿里云开通短信服务教程

阿里云官网👉https://cn.aliyun.com/

完成登录
在这里插入图片描述
进入短信服务
在这里插入图片描述
在这里插入图片描述
开通短信服务
在这里插入图片描述
购买短信条数
在这里插入图片描述
购买完成进入阿里云短信控制台https://dysms.console.aliyun.com/overview

开通个人资质
在这里插入图片描述
添加签名
在这里插入图片描述
申请模版
在这里插入图片描述
在此处绑定手机号并且测试调用api发送短信
在这里插入图片描述
点击调用api发送短信 点击调用API发送短信,可以看到发送短信的JAVA代码。在这里插入图片描述
申请阿里云秘钥,该秘钥在发送短信时会作为参数传入
点击Accesskey管理
在这里插入图片描述
点击创建Accesskey
在这里插入图片描述

编写代码

创建springboot项目
pox.xml

<dependencies>
  <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
  </dependency>
  <dependency>
    <groupId>com.itbaizhan</groupId>
    <artifactId>shopping_common</artifactId>
    <version>0.0.1-SNAPSHOT</version>
  </dependency>
  <!-- 阿里短信平台 -->
  <dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>dysmsapi20170525</artifactId>
    <version>2.0.9</version>
  </dependency>
  <!-- dubbo -->
  <dependency>
    <groupId>org.apache.dubbo</groupId>
    <artifactId>dubbo-spring-boot-starter</artifactId>
    <version>2.7.8</version>
  </dependency>
  <!-- 操作zookeeper -->
  <dependency>
    <groupId>org.apache.curator</groupId>
    <artifactId>curator-recipes</artifactId>
    <version>4.2.0</version>
  </dependency>
  <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-test</artifactId>
    <scope>test</scope>
  </dependency>
</dependencies>

application.yml

#端口号
server:
  port: 9007

#日志格式
logging:
  pattern:
   console: '%d{HH:mm:ss.SSS} %clr(%-5level) ---  [%-15thread] %cyan(%-50logger{50}):%msg%n'
message:
  accessKeyId: 自己的阿里key
  accessKeySecret:自己的阿里key

MessageServiceImpl.java

package com.jjy.messagedemo.util;


import com.aliyun.dysmsapi20170525.Client;
import com.aliyun.dysmsapi20170525.models.SendSmsRequest;
import com.aliyun.dysmsapi20170525.models.SendSmsResponse;
import com.aliyun.dysmsapi20170525.models.SendSmsResponseBody;

import com.aliyun.teaopenapi.models.Config;

import com.aliyun.teautil.models.RuntimeOptions;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;

@Service
public class MessageServiceImpl  {
    @Value("${message.accessKeyId}")
    private String accessKeyId;
    @Value("${message.accessKeySecret}")
    private String accessKeySecret;


    /**
     * 使用AK&SK初始化账号Client
     * @param accessKeyId
     * @param accessKeySecret
     * @return Client
     * @throws Exception
     */

    private Client createClient(String accessKeyId, String accessKeySecret) throws Exception {
        Config config = new Config()
                .setAccessKeyId(accessKeyId)
                .setAccessKeySecret(accessKeySecret);
        // 访问的域名
        config.endpoint = "dysmsapi.aliyuncs.com";
        return new Client(config);
    }




    public void sendMessage(String phoneNumber,String code) throws Exception {
        Client client = createClient(accessKeyId, accessKeySecret);
        SendSmsRequest sendSmsRequest = new SendSmsRequest()
                .setSignName("智境漫游")
                .setTemplateCode("SMS_465442065")
                .setPhoneNumbers(phoneNumber)
                .setTemplateParam("{\"code\":\""+code+"\"}");
        RuntimeOptions runtime = new RuntimeOptions();
        // 复制代码运行请自行打印API的返回值
        SendSmsResponse sendSmsResponse = client.sendSmsWithOptions(sendSmsRequest, runtime);
        SendSmsResponseBody body = sendSmsResponse.getBody();
        if ("OK".equals(body.getCode())){
            System.out.println("success");
        }else{
            System.out.println("error");
        }
    }
}

test.java

package com.jjy.messagedemo;


import com.jjy.messagedemo.util.MessageServiceImpl;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;

@SpringBootTest
class MessagedemoApplicationTests {
    @Autowired
    private MessageServiceImpl messageService;

    @Test
    void contextLoads() throws Exception {

     messageService.sendMessage("15035899338","1438438");
    }

}

注意:
因为申请的是阿里云短信个人服务,而不是企业服务,需要测试的发送手机号都必须在短信控制台进行绑定才能进行发送成功

如果我的内容对你有帮助,请点赞,评论,收藏。创作不易,大家的支持就是我坚持下去的动力
在这里插入图片描述

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐