java 实现发送手机验证码的功能 (超详细)

我这里使用的旦米(http://www.danmi.com/)你们用阿里的就去看看其他博客

在这里插入图片描述

1.首先注册一个旦米的账号,第一次注册会免费的送你10元。足够你去测试用,不用担心自己去充钱。
2.注册好了登录进去,必须要公司认证,认证通过之后才能使用。可以自己去网上搜一些企业的营业执照。但是一定要有效的才有用。这个我自己也是搞了大半天才弄好。
3.认证通过之后,找到验证码通知里面的API配置 获取你自己的 ACCOUNT SID 和 AUTH TOKEN

在这里插入图片描述

4.在短信通知里的模板管理里面配置你短信模板,审核通过之后就可以使用了,就可以拿到自己的模板id

在这里插入图片描述

在这里插入图片描述

5.这些准备好之后,就可以写代码了
5.1 我使用的是maven,直接在pom.xml直接导入依赖就可以了
 <dependency>                                                                               
     <groupId>com.alibaba</groupId>                                                        
     <artifactId>fastjson</artifactId>
     <version>1.2.47</version>
 </dependency>   

注意
ACCOUNT_SID 和 AUTH_TOKEN 放你自己的 ,还有param,和templateid 用你自己的

验证码通知类的内容不要直接用smsContent字段值来进行请求,传参的时候要用param字段值和templateid字段值来进行请求;如果有变量就带param字段,没有就不带,param字段值指的是您在用户中心建的模板里边带的短信变量,多个变量用英文逗号隔开;templateid就是在用户中心建的模板生成的模板id;如果只用smsContent字段值来进行请求,系统会默认匹配到会销子账号里边去(会销是要过人工审核的)

   private static final String QUERY_PATH = "https://openapi.danmi.com/distributor/sendSMS";
    private static final String ACCOUNT_SID = "4dabce68d9e16a8****";
    private static final String AUTH_TOKEN = "80b2b2a32e0139b6ef4b***7";

demo

package com.example.demo.controller;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

import com.alibaba.fastjson.JSONObject;

/**
 * @Description:发送验证码
 * @author:
 * @Date
 */
public class UserLController {
   
    private static final String QUERY_PATH = "https://openapi.danmi.com/distributor/sendSMS";
    private static final String ACCOUNT_SID 
  • 9
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Java实现手机短信验证码平台可以使用第三方短信平台接口来发送短信验证码。以下是实现步骤: 1. 注册第三方短信平台账号,并获取API接口信息。 2. 在Java项目中引入第三方短信平台的SDK(软件开发工具包)。 3. 编写Java代码,调用SDK提供的接口,传递短信内容和手机号码,发送短信验证码。 以下是一个简单的Java发送短信验证码的示例代码: ```java // 引入第三方短信平台SDK import com.aliyun.dysmsapi20170525.Client; import com.aliyun.dysmsapi20170525.models.*; import com.aliyun.teaopenapi.models.Config; public class SmsUtil { // 设置API接口信息 private static final String accessKeyId = "yourAccessKeyId"; private static final String accessKeySecret = "yourAccessKeySecret"; private static final String signName = "yourSignName"; private static final String templateCode = "yourTemplateCode"; public static void sendSms(String mobile, String code) throws Exception { // 创建配置对象 Config config = new Config() .setAccessKeyId(accessKeyId) .setAccessKeySecret(accessKeySecret); // 创建Client对象 Client client = new Client(config); // 创建发送短信请求对象 SendSmsRequest sendSmsRequest = new SendSmsRequest() .setPhoneNumbers(mobile) .setSignName(signName) .setTemplateCode(templateCode) .setTemplateParam("{\"code\":\"" + code + "\"}"); // 发送短信 SendSmsResponse sendSmsResponse = client.sendSms(sendSmsRequest); System.out.println(sendSmsResponse.getBody()); } } ``` 在上述代码中,我们使用了阿里云短信平台提供的SDK来实现发送短信验证码功能。需要事先在阿里云短信平台注册账号,并获取相应的API接口信息。然后,我们通过创建Config对象来设置API接口信息,并使用Client对象来发送短信。在发送短信时,需要设置手机号码、短信签名、短信模板ID和短信模板参数等信息。最后,我们将发送短信的结果输出到控制台。 以上就是基于Java实现手机短信验证码平台的简单示例。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值