短信驗證碼

JAVA發送手機短信,流傳有幾種方法:(1)使用webservice接口發送手機短信,這個可使用sina提供的webservice進行發送,可是須要進行註冊;(2)使用短信mao的方式進行短信的發送,這種方式應該是比較的經常使用,前提是須要購買硬件設備(3)使用中國網建提供的SMS短信平臺(申請帳號地址:http://sms.webchinese.cn/default.shtml) html

 本程序主要是運用了中國網建提供的SMS短信平臺,這個短信平臺基於java提供個專門的接口java

public class SMSverification {
 /**
  * 返回一個map集合,保存驗證碼code和發送短信的狀態碼result
  *
  * @param phone
  * @return map
  * @throws UnsupportedEncodingException
  * @throws IOException
  */
 public static HashMap<String, String> getMsgStatus(String phone)
   throws UnsupportedEncodingException, IOException {
  HashMap<String, String> map = new HashMap<String, String>();
  HttpClient client = new HttpClient();
  PostMethod post = new PostMethod("http://gbk.sms.webchinese.cn");
  post.addRequestHeader("Content-Type",
    "application/x-www-form-urlencoded;charset=gbk");// 在頭文件中設置轉碼
  String code = varificationCode();
  NameValuePair[] data = {
    new NameValuePair("uid", "yantuyouni"),// 註冊的用戶名  
    new NameValuePair("key", "yantuyouni"),// 註冊成功後,登陸網站使用的密鑰,這個密鑰要登陸到國建網而後有一個API接口,點進去就有一個key,能夠改,那個纔是密鑰
    new NameValuePair("smsMob", phone),// 手機號碼  
    new NameValuePair("smsText", phone + "用戶您好,歡迎加入沿途有你。驗證碼:"
      + code + "。") };//設置短信內容    
  post.setRequestBody(data);
  client.executeMethod(post);
  Header[] headers = post.getResponseHeaders();
  int statusCode = post.getStatusCode();
  System.out.println("statusCode===========" + statusCode);
  for (Header header : headers) {
   System.out.println(header.toString());
  }
  String result = new String(post.getResponseBodyAsString().getBytes(
    "gbk"));
  System.out.println("返回的狀態消息========" + result);
  map.put("code", code);
  map.put("result", result);
  return map;web

 }app

 /**
  * 生成四位隨機數
  *
  * @return
  */
 public static String varificationCode() {
  String code = "";
  int i = (int) ((Math.random() * 9 + 1) * 1000);// 生成一個四位的隨機數
  code = String.valueOf(i);// Integer.toString(i);
  return code;
 }
}dom

 短信發送後返回值 說 明 
-1 沒有該用戶帳戶 
-2 密鑰不正確(不是用戶密碼) 
-3 短信數量不足 
-11 該用戶被禁用 
-14 短信內容出現非法字符 
-41 手機號碼爲空 
-42 短信內容爲空 
大於0 短信發送數量 post

相關文章
相關標籤/搜索