阿里云短信验证码的实现
-
先上阿里云平台注册
-
开通短信服务,注意开通免费,发短信收费,先给自己余额充个值
-
-
打开自己的短信服务界面,[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CfnU4x0v-1584353153495)(https://s1.ax1x.com/2020/03/15/83sBIP.png)]
-
在概览界面,点击红色框处,进去先行创建自己的 access key,[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lcmtbsOF-1584353153496)(https://s1.ax1x.com/2020/03/15/83yMQg.png)]要记住圈住的这两处值[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uY9TYqBe-1584353153497)(https://s1.ax1x.com/2020/03/15/83yxmj.jpg)]
-
接下来选择自己要用得范围,如,我选择的是国内消息。
-
在签名管理处,先添加 短信签名
-
在模板管理处,再添加 短信模板
-
-
接下来就可以撸代码了
-
我使用的是maven工程
-
在概览界面处,点击红色圈中的地方,进去之后是自动生成代码的地方
-
在红色圈住的地方,要填上会自动在右边生成代码,直接复制即可,
-
注意
-
此处右侧代码,POM.xml 要求下载的版本可能有点低,我用的是4.4.6
-
我的POM.xml 所用
<dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>4.4.6</version> </dependency>
-
看我的代码吧,注意比对
package com.yckj.weidemo01.config; import com.aliyuncs.CommonRequest; import com.aliyuncs.CommonResponse; import com.aliyuncs.DefaultAcsClient; import com.aliyuncs.IAcsClient; import com.aliyuncs.exceptions.ClientException; import com.aliyuncs.exceptions.ServerException; import com.aliyuncs.http.MethodType; import com.aliyuncs.profile.DefaultProfile; /** * <p> * Title:com.yckj.weidemo01.config * </p> * <p/> * <p> * Description: 描述【】 * </p> * <p/> * <p> * Copyright: Copyright (c) 2020 * </p> * <p/> * <p> * Company: 太原工业学院 * </p> * * @author WeiHuiQiang * @version 1.0 * @created 2020/3/15 17:10 */ public class SendSms { public static void main(String[] args) { DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", "LTAI4FfT6pPcw88P89JCxP6g", /*你的accessKeyId*/ "mUQRBGCqqmgQfyRSOWnwMJqxna557M"); /*你的accessKeySecret*/ IAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.setSysMethod(MethodType.POST); request.setSysDomain("dysmsapi.aliyuncs.com"); request.setSysVersion("2017-05-25"); request.setSysAction("SendSms"); /*必填-地域名*/ request.putQueryParameter("RegionId", "cn-hangzhou"); /*发送手机号,可以逗号隔开,实现群发*/ request.putQueryParameter("PhoneNumbers", "13546356160"); /*必填-短信签名 签名名称*/ request.putQueryParameter("SignName", "超人1号"); /*必填-短信模板 模板CODE*/ request.putQueryParameter("TemplateCode", "SMS_185841746"); /*必填-模板内容,code,与模板中的 ${code} 对应,切记要以 JSON 字符串填写,例如我的模板内容为:您的验证码:${code},您正进行身份验证,打死不告诉别人!*/ request.putQueryParameter("TemplateParam", "{\"code\":\""+ 789465 +"\"}"); /*可选-上行短信扩展码(扩展码字段控制在7位或以下,无特殊需求用户请忽略此字段) request.putQueryParameter("SmsUpExtendCode", "90997");*/ /*可选:outId为提供给业务方扩展字段,最终在短信回执消息中将此值带回给调用者 request.putQueryParameter("OutId", "yourOutId");*/ try { CommonResponse response = client.getCommonResponse(request); System.out.println(response.getData()); } catch (ServerException e) { e.printStackTrace(); } catch (ClientException e) { e.printStackTrace(); } } }
-
到此结束,直接点击运行即可。
-
-
}
}
4. 到此结束,直接点击运行即可。
-
来源:CSDN
作者:HeiYanMin
链接:https://blog.csdn.net/HeiYanMin/article/details/104904797