新聞中心
本篇文章給大家?guī)?lái)的內(nèi)容是Java實(shí)現(xiàn)手機(jī)發(fā)送短信功能。有一定的參考價(jià)值,有需要的朋友可以參考一下,希望對(duì)你們有所幫助。一起跟隨小編過(guò)來(lái)看看吧。
我們擁有10余年網(wǎng)頁(yè)設(shè)計(jì)和網(wǎng)站建設(shè)經(jīng)驗(yàn),從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁(yè)設(shè)計(jì)師為您提供的解決方案。為企業(yè)提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作、微信開(kāi)發(fā)、微信小程序開(kāi)發(fā)、移動(dòng)網(wǎng)站建設(shè)、H5網(wǎng)站設(shè)計(jì)、等業(yè)務(wù)。無(wú)論您有什么樣的網(wǎng)站設(shè)計(jì)或者設(shè)計(jì)方案要求,我們都將富于創(chuàng)造性的提供專業(yè)設(shè)計(jì)服務(wù)并滿足您的需求。
一、實(shí)現(xiàn)手機(jī)短信驗(yàn)證的基本思路
1、用戶填寫(xiě)手機(jī)號(hào),點(diǎn)擊獲取驗(yàn)證碼按鈕(頁(yè)面可以做一些手機(jī)號(hào)是否有效處理),發(fā)起請(qǐng)求;成功后頁(yè)面開(kāi)始倒計(jì)時(shí)60s
2、后臺(tái)接收到請(qǐng)求,驗(yàn)證手機(jī)號(hào)是否有效和是否被注冊(cè),若無(wú)效或已注冊(cè),則返回提示用戶該手機(jī)號(hào)無(wú)效或已注冊(cè);若有效、未被注冊(cè),后臺(tái)生成驗(yàn)證碼,并通過(guò)調(diào)用第三方短信接口并發(fā)送相關(guān)數(shù)據(jù)(包括手機(jī)號(hào)和驗(yàn)證碼),若發(fā)送成功則將驗(yàn)證碼存入session或resis中,并設(shè)置驗(yàn)證碼有效期,失敗則返回提示。
3、手機(jī)收到驗(yàn)證碼后在有效時(shí)間內(nèi),填寫(xiě)在頁(yè)面,并點(diǎn)擊注冊(cè)后登陸等功能按鈕,發(fā)送請(qǐng)求
4、后臺(tái)接收到請(qǐng)求,獲取頁(yè)面?zhèn)鬟^(guò)來(lái)的驗(yàn)證碼與session或resis中的驗(yàn)證碼對(duì)比,相同則通過(guò)驗(yàn)證,可以做相應(yīng)的業(yè)務(wù)處理(注冊(cè)或登錄等操作),最后將session或resis中的驗(yàn)證碼無(wú)效化,一般置空就可以了;否則提示驗(yàn)證碼錯(cuò)誤或以過(guò)期。
二、實(shí)現(xiàn)短信發(fā)送的技術(shù)
目前主要有三種方式:
(1)使用webservice接口發(fā)送手機(jī)短信,這個(gè)可以使用sina提供的webservice進(jìn)行發(fā)送,但是需要進(jìn)行注冊(cè);
(2)使用短信mao的方式進(jìn)行短信的發(fā)送,這種方式應(yīng)該是比較的常用,前提是需要購(gòu)買硬件設(shè)備,
(3)使用中國(guó)網(wǎng)建提供的SMS短信平臺(tái)(中國(guó)網(wǎng)建申請(qǐng)賬號(hào)地址:http://sms.webchinese.cn/reg.shtml)
其實(shí)無(wú)論哪種方式,基本都一樣,只需要把demo下來(lái)了,配置你自己的信息就可以啦。
這個(gè)主要介紹中國(guó)網(wǎng)建提供的SMS短信平臺(tái)發(fā)送短信:
注冊(cè)賬號(hào)后,平臺(tái)提供了5條免費(fèi)的測(cè)試短信,可以下載對(duì)應(yīng)的jar,和demo,修改配置,進(jìn)行開(kāi)發(fā)接入
commons-logging-1.1.1.jar
commons-httpclient-3.1.jar
commons-codec-1.4.jar
demo實(shí)例:
HttpClientUtil工具類:封裝了短信發(fā)送的post/get請(qǐng)求發(fā)送的方法
test類:
import java.util.HashMap; import java.util.Map; public class test { //用戶名 private static String Uid = "測(cè)試www"; //接口安全秘鑰 private static String Key = "d41d8cd98f00b204e990"; //手機(jī)號(hào)碼,多個(gè)號(hào)碼如13800000000,13800000001,13800000002 private static String smsMob = "13800000000"; //短信內(nèi)容 private static String smsText = "驗(yàn)證碼:123456"; public static void main(String[] args) { HttpClientUtil client = HttpClientUtil.getInstance(); //UTF發(fā)送 int result = client.sendMsgUtf8(Uid, Key, smsText, smsMob); if (result > 0) { System.out.println("UTF8成功發(fā)送條數(shù)==" + result); } else { System.out.println(client.getErrorMsg(result)); } } }
關(guān)于Java實(shí)現(xiàn)手機(jī)發(fā)送短信功能就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的參考價(jià)值,可以學(xué)以致用。如果喜歡本篇文章,不妨把它分享出去讓更多的人看到。
文章題目:Java實(shí)現(xiàn)手機(jī)發(fā)送短信功能
URL地址:http://fisionsoft.com.cn/article/jdidhc.html