阿里雲短信驗證碼后台代碼


private String sendSms(String phone,int code, String type){
        //雲通信產品-短信API服務產品名稱(短信產品名固定,無需修改)
      final String product = "Dysmsapi";
      //雲通信產品-短信API服務產品域名(接口地址固定,無需修改)
      final String domain = "dysmsapi.aliyuncs.com";
      //此處需要替換成開發者自己的AK信息
      final String accessKeyId = "LTAIo5ALfea3rxCI";
      final String accessKeySecret = "qYcRVerI0PhdWADfNst6xP3hm1ophB";
      //初始化ascClient
      IClientProfile profile = DefaultProfile.getProfile("cn-hangzhou", accessKeyId, accessKeySecret);
      try {
            DefaultProfile.addEndpoint("cn-hangzhou", "cn-hangzhou", product, domain);
        } catch (ClientException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
      IAcsClient acsClient = new DefaultAcsClient(profile);
      //組裝請求對象
      SendSmsRequest request = new SendSmsRequest();
      //使用post提交
      request.setMethod(MethodType.POST);
      //必填:待發送手機號。支持以逗號分隔的形式進行批量調用,批量上限為1000個手機號碼,批量調用相對於單條調用及時性稍有延遲,驗證碼類型的短信推薦使用單條調用的方式
      request.setPhoneNumbers(phone);
      //必填:短信簽名-可在短信控制台中找到
      request.setSignName("中交船易行");
      //必填:短信模板-可在短信控制台中找到
      if(type!=null&& type.equals("1")){
          request.setTemplateCode("SMS_89765027");
          request.setTemplateParam("{\"number\":\""+code+"\"}");
      }
      else if(type!=null&& type.equals("2")){
          request.setTemplateCode("SMS_89515079");
          request.setTemplateParam("{\"code\":\""+code+"\"}");
      }
      else{
          request.setTemplateCode("SMS_89515084");
          request.setTemplateParam("{\"code\":\""+code+"\"}");
      }
      //可選:模板中的變量替換JSON串,如模板內容為"親愛的${name},您的驗證碼為${code}"時,此處的值為
      //友情提示:如果JSON中需要帶換行符,請參照標准的JSON協議對換行符的要求,比如短信內容中包含\r\n的情況在JSON中需要表示成\\r\\n,否則會導致JSON在服務端解析失敗
      
      //可選-上行短信擴展碼(無特殊需求用戶請忽略此字段)
      //request.setSmsUpExtendCode("90997");
      //可選:outId為提供給業務方擴展字段,最終在短信回執消息中將此值帶回給調用者
      // request.setOutId("yourOutId");
      //請求失敗這里會拋ClientException異常
      SendSmsResponse sendSmsResponse;
        try {
            sendSmsResponse = acsClient.getAcsResponse(request);
            return sendSmsResponse.getCode();
        } catch (ServerException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (ClientException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
      return "0";
  }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM