java調用短信api接口發送短信demo實例
import org.apache.commons.httpclient.Header;import org.apache.commons.httpclient.HttpClient;import org.apache.commons.httpclient.NameValuePair;import org.apache.commons.httpclient.methods.PostMethod;/** * 發送短信驗證碼 * 申請地址:http://sms.webchinese.cn * 需要的jar commons-httpclient-3.1.jar commons-logging-x.x.x.jar commons-codec-x.x.jar * @author Admin * */public class SendMsg {public static void main(String[] args) throws Exception { String s ="961210"; HttpClient client = new HttpClient(); PostMethod post = new PostMethod("http://utf8.sms.webchinese.cn/"); post.addRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=utf-8");// 在頭文件中設置轉碼 NameValuePair[] data = { new NameValuePair("Uid", "z1780675810"), // 注冊的用戶名 new NameValuePair("Key", "5c52043e4c6deb16563d"), // 注冊成功后,登錄網站使用的密鑰 new NameValuePair("smsMob", "要發送的手機號"), // 手機號碼 new NameValuePair("smsText", "測試地址,歡迎使用本公司發送測試驗證碼為:"+698210+"請妥善保管") };//設置短信內容 post.setRequestBody(data); client.executeMethod(post); Header[] headers = post.getResponseHeaders(); int statusCode = post.getStatusCode(); System.out.PRintln("statusCode:" + statusCode); for (Header h : headers) { System.out.println(h.toString()); } String result = new String(post.getResponseBodyAsString().getBytes( "utf-8")); System.out.println(result); post.releaseConnection(); }}
注意簽名一定要跟網站注冊的時候一樣 不然返回結果為-51 就是簽名有問題

簽名內容一定要放在短信文本里面!!
新聞熱點
疑難解答