1、開發背景
前提擁有短信網關的憑證、且信息有效。自行購買、此實例以“浪馳”商務短信快車爲例。
現如今遇到很多的情況都要用的短信發送的功能、比如:用戶註冊獲取驗證碼、平臺給用戶推送信息等等、其實現原理大致相同、
無複雜的邏輯需要理解、只需要熟悉對應的短信網關亦或是郵件網關的相應規則即可。
2、java開發實例
a)以配置文件的形式來存儲短信網關的賬戶信息、每次需要調用是、通過調用加密的配置文件來獲取賬戶信息。
b)以接口的形式定義發送短信的功能 好處多多:比如項目中發送短信的功能都是調用這個接口、那麼下次換個短信網關、
程序接口和其他地方不需要動、只需要修改接口實現類即可;
c)調用短信接口 具體是需求而定。比如此處的需求爲被動發送短信、即觸發之後發送;不需要做持久化操作。
短信接口定義:浪馳商務快車短信網頁接口文檔
密碼加密器:百度雲下載地址 密碼:y3d8
3、浪馳短信接口注意事項:
a)接口編碼是GB2312如果出現手機收到短信內容是亂碼可對短信內容做URLENCODE編碼
b)登錄、發送短信、維持心跳、註銷;整個流程必須在一個session中完成;否則會出現無法登錄、無法註銷或其他異常、
到時候就需要聯繫客服來人工去除登錄標志
c)若做持久化操作:心跳連接建議 50秒--2分鐘做一次 如果出現異常掉線 沒有正常註銷 會在5—15分鐘後掉線
(前提沒寫IE緩存)所以建議5分鐘重連一次 頻繁的連接將當惡意連接處理
d)建議不要寫IE緩存 因爲出現異常掉線了 沒有正常註銷的情況下 重連可能長時間返回1000的錯誤(當前用戶已登錄)
e)建議發送短信 間隔0.1秒提交一次, 羣發一次最多提交1000個手機號
f)密碼需要特殊加密方可使用、加密工具 見 附件。
4、代碼貼圖
a)賬戶配置文件
b)接口
c)實現類
備註:以上代碼貼圖爲通用實現方法、無需登錄、直接調用方法發送即可;若要進行持久化操作則需要如下操作:
等等 操作、具體根據需求去看使用什麼函數、寫什麼方法就可以了。
最重要的一步是:
因爲一系列持久化的操作是要在同一個session中完成的、每個HTTP 請求都是會生成一個不同的SESSIONID 設置了剛纔那一步 這樣SESSIONID 就相同了 不設置就是系統默認的了。
最後補全一個錯誤代碼編號:2008 是因爲落款沒加 或者落款不對