首页 > 编程语言 >java通过短信发送验证码

java通过短信发送验证码

时间:2023-03-22 10:34:18浏览次数:35  
标签:短信 String 验证码 private pwd static new java final


/*
* 如uid是:test,登录密码是:123123
pwd=md5(123123test),即
pwd=b9887c5ebb23ebb294acab183ecf0769
线生成地址:http://www.sms.cn/password
*/
private static final String addr = "http://api.sms.cn/mt/";
private static final String userId = "xxxxxx";
private static final String pwd = "b9887c5ebb23ebb294acab183ecf0769";
private static final String encode = "utf8";
public static String send(String code, String mobile) throws Exception {

String msgContent = "XXXXXXXXXXXXXXXXXXXXXX欢迎您的加入,验证码为:" + code;
//组建请求
String straddr = addr +
"?uid=" + userId +
"&pwd=" + pwd +
"&mobile=" + mobile +
"&encode=" + encode +
"&content=" + msgContent;

StringBuffer sb = new StringBuffer(straddr);
System.out.println("URL:" + sb);

//发送请求
URL url = new URL(sb.toString());
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("POST");
BufferedReader in = new BufferedReader(new InputStreamReader( url.openStream(), "gbk"));

//返回结果
String inputline = in.readLine();
return inputline;
}

标签:短信,String,验证码,private,pwd,static,new,java,final
From: https://blog.51cto.com/u_3871599/6142197

相关文章

  • java代码中获取classpath路径
    javaweb工程中,有时候需要自己手动的去读取classpath下面的配置文件,这里总结一点读取classpath路径的方法,分享一下。方法一:Stringpath=Test.class.getResource("/").......
  • JavaScript 浏览器打断点 Debugging
      1.下面我们看一个例子,这里是5+1=6,但是结果是51   console.log效率会比较低  2.debug可以暂停代码,和查看变量,按F12,看Sources  3.展开鼠标类型,......
  • Java Spring使用EventSource进行服务端推送
    Java代码:@ResponseBody@RequestMapping(value="/getDate",produces="text/event-stream;charset=UTF-8")publicvoidgetDate(HttpServletResponse......
  • Java中实现按字符串位数在前面补0
    场景现在要将4在前面补位为0004。实现1.首先将方法包装为工具类StringwaterCode=CommonUtils.fillZeroBeforeString(String.valueOf(max),4);其中max为最大值即4,第二个参......
  • Java远程唤醒mac
    关机的,大家都会……想比我就不说了吧!通过IP,使用shutdown命令,外加参数……附上地址,OK。packagecom.iaiai.test;importjava.net.DatagramPacket;i......
  • Java并发夺命50问
    本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校......
  • Java面试-基础篇之3
    3.Java中的深拷贝和浅拷贝的区别在解释深浅拷贝前先了解一个数据在Java语言中的类别和存储形式。我们都知道在Java中,数据都叫做对象,拷贝也是针对对象来做的。在Java中存......
  • JavaWeb使用Kaptcha生成验证码(jar版)
    使用方式 Web项目导入jar包kaptcha-2.3.0.jar1.1:自定义jar包位置 自定义的jar包位置需要点击AddasLibrary才能使用,一般选......
  • 获取以今天为起始日期后两周的日期的Java方法
    importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;publicclassDateUtils{publicstaticStringgetTwoWeeksLaterDate()......
  • java线程池相关问题
    线程池有几种拒绝策略?当线程池的线程数达到最大线程数时,需要执行拒绝策略。拒绝策略需要实现RejectedExecutionHandler接口,并实现rejectedExecution(Runnabler, T......