<!--aliyun短信sdk--> <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> <version>4.1.0</version> </dependency>
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; /** * 阿里云短信验证码 */ public class shortMessage { //对应accessKeyId private static final String accessKeyId="你的KeyId"; //对应accessKeySercret private static final String accessKeySercret="你的KeySercret"; //对应签名名称 private static final String signname="签名名称"; //对应模板代码 private static final String templateCode="模板code"; //对应发送的验证码 private static int moblie_code=(int)((Math.random()*9+1)*100000); /** * 短信发送 */ public static void SendMsg(String telphone){ DefaultProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId, accessKeySercret); IAcsClient client = new DefaultAcsClient(profile); CommonRequest request = new CommonRequest(); request.setMethod(MethodType.POST); //aliyun对应发送短信的服务器地址 request.setDomain("dysmsapi.aliyuncs.com"); //对应版本号 request.setVersion("2017-05-25"); request.setAction("SendSms"); request.putQueryParameter("RegionId", "cn-hangzhou"); request.putQueryParameter("PhoneNumbers", telphone); request.putQueryParameter("SignName", signname); request.putQueryParameter("TemplateCode", templateCode); request.putQueryParameter("TemplateParam", "{\"code\":"+moblie_code+"}"); try { CommonResponse response = client.getCommonResponse(request); System.out.println(response.getData());//返回信息 System.out.println(moblie_code);//返回验证码,可将验证码和手机号存入rides中,并设置多长时间过期 } catch (ServerException e) { e.printStackTrace(); } catch (ClientException e) { e.printStackTrace(); } } public static void main(String args[]){ shortMessage.SendMsg("要发送验证码的手机号"); } }
原文:https://www.cnblogs.com/xymaxbf/p/12048840.html