㈠ 用java調用簡訊介面給手機發送簡訊怎麼寫代碼
看介面中需要什麼參數,在前台傳給他就好了,具體看介面發送簡訊的方法需要什麼參數
㈡ java通過url訪問調用簡訊發送功能問題
從代碼上來看,沒有問題,
那麼可能出現的問題有
1,你的url不對,
2,你拼接的urlsb不對
3,你發送的簡訊內容不對,比如有的簡訊介面需要添加後綴
㈢ java簡訊介面發送的這三種簡訊,你收到過幾種
不同的行業應用java簡訊介面的用途不一樣,但大多數都是用於傳遞消息、加強服務、提高安全性,因而一般情況下java簡訊介面會發送通知類簡訊、問候類簡訊、營銷類簡訊及廣告類簡訊,具體的讓我們一起來了解下吧。
1.通知型簡訊
應用java簡訊介面發送通知類簡訊的行業很多,比如教育行業會給學生發送放假通知、開學通知或者考試通知等;一些人數多的大型企業常常要應用java簡訊介面給員工發送開會通知、內部業績通報、內部員工激勵等信息;快遞物流行業則需要發送快遞領取通知簡訊等,此外一些婚戀機構平台或者某個家庭也可以應用java簡訊介面發送婚禮通知簡訊,比如:我親愛的同學、朋友們,本人鄭重決定於XX日終結單身生活,邁向婚姻的殿堂,在那激動人心的時刻里,希望你能來見證,為我舉杯祝福!地址XX!可別遲到哦!
2.問候型簡訊
這類簡訊往往是企業出於服務的目的而發送的,為的是維護和客戶之間的關系,加強跟客戶之間的黏性,因而每到了過年過節或者特殊時間的時候,企業就會應用java簡訊介面給用戶發送祝福問候類的簡訊,以便讓用戶可以想起自己,藉此加深用戶對企業的忠誠度還有依賴性。這類簡訊比較柔和,沒有很強的目的性,所以比較容易讓用戶接受。
3.促銷型簡訊
這是平時市民接收很多的一種簡訊類型了,這種簡訊一般都是企業出於營銷推廣的目的發送的,為的是刺激客戶下單,或者讓客戶增加重復購買的的機率,因為java簡訊介面發送的促銷簡訊正好是很多市民需要的,因而效果非常好,很多企業也因此收獲了不少回頭客。
㈣ 如何利用Java語言實現消息推送到手機app
首先APP後台就得有這樣的輪詢程序,比如每次打開app時觸發,比如每隔10分鍾觸發,每次觸發就調用下伺服器端的服務,服務端去拉取要推送的信息,或者知道對方的手機號或微信號,那就直接調用簡訊介面或直接發送微信信息了。㈤ java 通用簡訊介面思路
這個也沒有什麼復雜的。各個介面提供的API功能一致,只是程序上要設計的合理;
程序上對需要的簡訊發送功能進行封裝,就是說,在平台上只有平台定義的發送方法或者類,那如何把這些不同的介面API集合起來,那是否可以設計成可配置的功能,比如你要變更簡訊貓的介面,只是簡單的把簡訊貓所提供的JAR導入的到平台,把需要的功能方法(發送、接收、回執等)用可變的配置機制,把相關的函數方法配置到文件中。這樣不就可以了;
㈥ 手機簡訊驗證碼java介面怎麼寫
這個首先你要確定一下簡訊平台,他們會給你提供簡訊實現的介面文檔。
比如:
public static String doPost(String reqUrl, Map parameters, String recvEncoding)
{
HttpURLConnection url_con = null;
String responseContent = null;
try
{
StringBuffer params = new StringBuffer();
Iterator iter = parameters.entrySet().iterator();
while (iter
.hasNext())
{
Map.Entry element = (Map.Entry)iter.next();
params.append(element.getKey().toString());
params.append("=");
params.append(URLEncoder.encode(element.getValue().toString(),
requestEncoding));
params.append("&");
}
if (params.length() > 0)
{
params = params.deleteCharAt(params.length() - 1);
}
URL url = new URL(reqUrl);
url_con = (HttpURLConnection)url.openConnection();
url_con.setRequestMethod("POST");
System.setProperty("sun.net.client.defaultConnectTimeout",
String.valueOf(connectTimeOut));
System.setProperty("sun.net.client.defaultReadTimeout",
String.valueOf(readTimeOut));
url_con.setDoOutput(true);
byte[] b = params.toString().getBytes();
url_con.getOutputStream().write(b, 0, b.length);
url_con.getOutputStream().flush();
url_con.getOutputStream().close();
InputStream in = url_con.getInputStream();
BufferedReader rd = new BufferedReader(
new InputStreamReader(in,
recvEncoding));
String tempLine = rd.readLine();
StringBuffer tempStr = new StringBuffer();
String crlf = System.getProperty("line.separator");
while (tempLine != null)
{
tempStr.append(tempLine);
tempStr.append(crlf);
tempLine = rd.readLine();
}
responseContent = tempStr.toString();
rd.close();
in.close();
}
catch (IOException localIOException)
{
}
finally
{
if (url_con != null)
{
url_con.disconnect();
}
}
return responseContent;
}
public static String sendTelCode(String mobile,String telcode){
Map<String ,String> map = new HashMap<String ,String>();
map.put("account", "Babo");
map.put("mobile", mobile);
map.put("pswd", "D3dddD");
try {
map.put("msg", java.net.URLEncoder.encode("您的驗證碼是"+telcode+",若非本人操作請忽略","utf-8"));
} catch (UnsupportedEncodingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
String getValue = doPost("http://www.ibabo.cn:7788/msg/HttpSendSM", map, "UTF-8");
System.out.println(getValue);
return getValue;
}
㈦ 中國移動簡訊介面java怎麼調用
java調用運營商的介面參考:
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JSP Page</title>
</head>
<body>
<h1>
<%
String PostData = "sname=kwsm&spwd=kwsm&scorpid=&sprdid=101&sdst=13910862579&smsg="+java.net.URLEncoder.encode("簡訊內容","utf-8");
//out.println(PostData);
String ret = cn.umob.sms.Send.SMS(PostData, "http://10.1.120.22/SmsMmsWebService/Service.asmx/g_Submit");
out.println(ret);
//請自己反序列化返回的字元串並實現自己的邏輯
%>
</h1>
</body>
</html>
㈧ java程序怎麼調用webservice介面,實現發送簡訊功能
給你一個最簡單的方法:
第一、根據http://134.224.102.6:80/CompanySendSmInf/services/SmsInf?wsdl 拿到WSDL文件。
第二、根據Axis的jar包,把WSDL文件生成客服端java代碼。(可以把java文件打成jar文件,便於管理。怎麼生成java代碼,網路里都有說明我就不寫了。)
第三、在你工程里用AXIS的功能屬性,調用外部介面;給你一個格式模板:
MobileCodeWSLocator l=new MobileCodeWSLocator();//MobileCodeWSLocator是WSDL文件生成客服端java類;
MobileCodeWSSoap s=l.getMobileCodeWSSoap();();//MobileCodeWSSoap 是WSDL文件生成客服端java類
String m=s.getMobileCodeInfo("13811534742", "");
如果你用Axis生成的java類,格式和上面一樣;自己參考一下就懂了。
你上面明顯的連接異常,第三方服務明顯沒有開,WEBSERVICE可以設置戶名、密碼,像行所有的WEBSERVICE都設置,安全考慮吧。
㈨ JAVA調用簡訊介面,有例子最好
我本來也想用來著,網上都有例子,不過簡訊介面肯定是要買的,好像有注冊後你每天可以發8到十條可以測試一下。
㈩ java如何實現發送簡訊驗證碼功能
1、創建一個Http的模擬請求工具類,然後寫一個POST方法或者GET方法
/** * 文件說明 * @Description:擴展說明 * @Copyright: XXXX dreamtech.com.cn Inc. All right reserved * @Version: V6.0 */package com.demo.util; import java.io.IOException;import java.util.Map; import org.apache.commons.httpclient.HttpClient;import org.apache.commons.httpclient.HttpException;import org.apache.commons.httpclient.SimpleHttpConnectionManager;import org.apache.commons.httpclient.methods.GetMethod;import org.apache.commons.httpclient.methods.PostMethod; /** * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser: feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX * @Version:V6.0 */public class HttpRequestUtil { /** * HttpClient 模擬POST請求 * 方法說明 * @Discription:擴展說明 * @param url * @param params * @return String * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser:feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX */ public static String postRequest(String url, Map<String, String> params) { //構造HttpClient的實例 HttpClient httpClient = new HttpClient(); //創建POST方法的實例 PostMethod postMethod = new PostMethod(url); //設置請求頭信息 postMethod.setRequestHeader("Connection", "close"); //添加參數 for (Map.Entry<String, String> entry : params.entrySet()) { postMethod.addParameter(entry.getKey(), entry.getValue()); } //使用系統提供的默認的恢復策略,設置請求重試處理,用的是默認的重試處理:請求三次 httpClient.getParams().setBooleanParameter("http.protocol.expect-continue", false); //接收處理結果 String result = null; try { //執行Http Post請求 httpClient.executeMethod(postMethod); //返回處理結果 result = postMethod.getResponseBodyAsString(); } catch (HttpException e) { // 發生致命的異常,可能是協議不對或者返回的內容有問題 System.out.println("請檢查輸入的URL!"); e.printStackTrace(); } catch (IOException e) { // 發生網路異常 System.out.println("發生網路異常!"); e.printStackTrace(); } finally { //釋放鏈接 postMethod.releaseConnection(); //關閉HttpClient實例 if (httpClient != null) { ((SimpleHttpConnectionManager) httpClient.getHttpConnectionManager()).shutdown(); httpClient = null; } } return result; } /** * HttpClient 模擬GET請求 * 方法說明 * @Discription:擴展說明 * @param url * @param params * @return String * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser:feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX */ public static String getRequest(String url, Map<String, String> params) { //構造HttpClient實例 HttpClient client = new HttpClient(); //拼接參數 String paramStr = ""; for (String key : params.keySet()) { paramStr = paramStr + "&" + key + "=" + params.get(key); } paramStr = paramStr.substring(1); //創建GET方法的實例 GetMethod method = new GetMethod(url + "?" + paramStr); //接收返回結果 String result = null; try { //執行HTTP GET方法請求 client.executeMethod(method); //返回處理結果 result = method.getResponseBodyAsString(); } catch (HttpException e) { // 發生致命的異常,可能是協議不對或者返回的內容有問題 System.out.println("請檢查輸入的URL!"); e.printStackTrace(); } catch (IOException e) { // 發生網路異常 System.out.println("發生網路異常!"); e.printStackTrace(); } finally { //釋放鏈接 method.releaseConnection(); //關閉HttpClient實例 if (client != null) { ((SimpleHttpConnectionManager) client.getHttpConnectionManager()).shutdown(); client = null; } } return result; }}
2、在創建一個類,生成驗證碼,然後傳遞相應的參數(不同的簡訊平台介面會有不同的參數要求,這個一般簡訊平台提供的介面文檔中都會有的,直接看文檔然後按要求來即可)
/** * 文件說明 * @Description:擴展說明 * @Copyright: XXXX dreamtech.com.cn Inc. All right reserved * @Version: V6.0 */package com.demo.util; import java.net.URLEncoder;import java.util.HashMap;import java.util.Map; /** * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser: feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX * @Version:V6.0 */public class SendMsgUtil { /** * 發送簡訊消息 * 方法說明 * @Discription:擴展說明 * @param phones * @param content * @return * @return String * @Author: feizi * @Date: 2015年4月17日 下午7:18:08 * @ModifyUser:feizi * @ModifyDate: 2015年4月17日 下午7:18:08 */ @SuppressWarnings("deprecation") public static String sendMsg(String phones,String content){ //簡訊介面URL提交地址 String url = "簡訊介面URL提交地址"; Map<String, String> params = new HashMap<String, String>(); params.put("zh", "用戶賬號"); params.put("mm", "用戶密碼"); params.put("dxlbid", "簡訊類別編號"); params.put("extno", "擴展編號"); //手機號碼,多個號碼使用英文逗號進行分割 params.put("hm", phones); //將簡訊內容進行URLEncoder編碼 params.put("nr", URLEncoder.encode(content)); return HttpRequestUtil.getRequest(url, params); } /** * 隨機生成6位隨機驗證碼 * 方法說明 * @Discription:擴展說明 * @return * @return String * @Author: feizi * @Date: 2015年4月17日 下午7:19:02 * @ModifyUser:feizi * @ModifyDate: 2015年4月17日 下午7:19:02 */ public static String createRandomVcode(){ //驗證碼 String vcode = ""; for (int i = 0; i < 6; i++) { vcode = vcode + (int)(Math.random() * 9); } return vcode; } /** * 測試 * 方法說明 * @Discription:擴展說明 * @param args * @return void * @Author: feizi * @Date: XXXX年XX月XX日 XX:XX:XX * @ModifyUser:feizi * @ModifyDate: XXXX年XX月XX日 XX:XX:XX */ public static void main(String[] args) {// System.out.println(SendMsgUtil.createRandomVcode());// System.out.println("&ecb=12".substring(1)); System.out.println(sendMsg("18123456789,15123456789", "尊敬的用戶,您的驗證碼為" + SendMsgUtil.createRandomVcode() + ",有效期為60秒,如有疑慮請詳詢XXX-XXX-XXXX【XXX中心】")); }
然後執行一下,一般的情況下參數傳遞正確,按照介面文檔的規范來操作的話,都會發送成功的,手機都能收到驗證碼的,然後可能會出現的問題就是:發送的簡訊內容有可能會出現中文亂碼,然後就會發送不成功,按照簡訊平台的要求進行相應的編碼即可。一般都會是UTF-8編碼。