- <dependency>
- <groupId>com.aliyun</groupId>
- <artifactId>aliyun-java-sdk-core</artifactId>
- <version>4.6.0</version>
- </dependency>
- @Value("${aliyun.accessKeyId}")
- private String accessKeyId;
- @Value("${aliyun.accessKeySecret}")
- private String accessKeySecret;
- @Value("${aliyun.signName}")
- private String signName;
- @Value("${aliyun.templateCode}")
- private String templateCode;
- /**
- * 手机短信验证
- * @param phone
- * @param codeMap
- * @return
- */
- @Override
- public boolean phoneNote(String phone, Map<String, String> codeMap) {
- if (StrUtil.isBlank(phone)){
- return false;
- }
- //-------------------------阿里云-短信验证代码------------------
- //基本参数
- DefaultProfile profile =
- DefaultProfile.getProfile("default", accessKeyId, accessKeySecret);
- IAcsClient client = new DefaultAcsClient(profile);
- //设置相关固定的参数
- CommonRequest request = new CommonRequest();
- //request.setProtocol(ProtocolType.HTTPS);
- request.setMethod(MethodType.POST);
- request.setDomain("dysmsapi.aliyuncs.com");
- request.setVersion("2017-05-25");//版本号-不要改
- request.setAction("SendSms");
- //设置发送相关的参数
- request.putQueryParameter("PhoneNumbers",phone); //手机号
- request.putQueryParameter("SignName",signName); //申请阿里云 签名名称
- request.putQueryParameter("TemplateCode",templateCode); //申请阿里云 模板code
- request.putQueryParameter("TemplateParam", JSONUtil.toJsonStr(codeMap)); //验证码数据,转换json数据传递
- //最终发送
- try {
- CommonResponse response = client.getCommonResponse(request);
- boolean success = response.getHttpResponse().isSuccess();
- log.warn("短信验证结果1="+success);
- return true; //成功
- } catch (ClientException e) {
- e.printStackTrace();
- return false;//失败
- }
-
- }
- <dependency>
- <groupId>com.aliyun</groupId>
- <artifactId>dysmsapi20170525</artifactId>
- <version>2.0.24</version>
- </dependency>
- /**
- * 手机短信验证
- * @param phone
- * @param codeMap
- * @return
- */
- @Override
- public boolean phoneNoteNew(String phone, Map<String, String> codeMap) throws Exception {
- //-------------------------阿里云-短信验证代码------------------
- Client client =client(accessKeyId,accessKeySecret);
- SendSmsRequest sendSmsRequest = new SendSmsRequest()
- .setSignName(signName)
- .setTemplateCode(templateCode)
- .setPhoneNumbers(phone)
- .setTemplateParam(JSONUtil.toJsonStr(codeMap));
- RuntimeOptions runtime = new RuntimeOptions();
- try {
- SendSmsResponse resp = client.sendSmsWithOptions(sendSmsRequest, runtime);
- log.warn("短信验证结果=="+resp.getStatusCode());
- log.warn("短信验证结果22=="+resp.getBody().getMessage());
- return true;
- } catch (Exception e) {
- e.printStackTrace();
- return false;
- }
-
- }
- private Client client(String setAccessKeyId, String setAccessKeySecret) throws Exception {
- Config config = new Config()
- // 必填,您的 AccessKey ID
- .setAccessKeyId(setAccessKeyId)
- // 必填,您的 AccessKey Secret
- .setAccessKeySecret(setAccessKeySecret);
- // Endpoint 请参考 https://api.aliyun.com/product/Dysmsapi
- config.endpoint = "dysmsapi.aliyuncs.com";
- return new Client(config);
- }
关注,收藏,点赞,有问题可以私信“门主” :v:z13135361785