標籤:簡訊 appid for random 驗證碼 字串 技術 使用者 初始化
業務:
手機端點擊發送驗證碼,請求發送到python端,由python調用第三方平台(我們使用的是榛子云簡訊http://smsow.zhenzikj.com)的簡訊介面,產生驗證碼並發送。
SDK下載: http://smsow.zhenzikj.com/doc/sdk.html
API文檔: http://smsow.zhenzikj.com/doc/python_sdk_doc.html
代碼:
1)產生4位隨機數作為驗證碼
import randomcode = ‘‘;//驗證碼for num in range(1,5): code = code + str(random.randint(0, 9));
2)匯入sdk
import zhenzismsclient as smsclient
3)調用簡訊平台發送驗證碼
client = smsclient.ZhenziSmsClient(‘100000‘, ‘NmABSDFDKKDFMzZDFFkNjcwNDc1MmZ‘);result = client.send(‘12411111111‘, ‘您的驗證碼為‘+code)
ZhenziSmsClient需要使用事先申請的AppId、AppSecret初始化
返回結果是json格式的字串, code: 發送狀態,0為成功。非0為發送失敗,可從data中查看錯誤資訊
{ "code":0, "data":"發送成功"}錯誤碼表
| 錯誤碼 |
原因 |
解決方案 |
| 100 |
參數格式錯誤 |
檢查請求參數是否為空白, 或手機號碼格式錯誤 |
| 101 |
簡訊內容超過1000字 |
簡訊內容過長,請篩檢或分多次發送 |
| 105 |
appId錯誤或應用不存在 |
請聯絡工作人員申請應用或檢查appId是否輸入錯誤 |
| 106 |
應用被禁止 |
請聯絡工作人員查看原因 |
| 107 |
ip錯誤 |
如果設定了ip白名單,系統會檢查請求伺服器的ip地址,已確定是否為安全的來源訪問 |
| 108 |
簡訊餘額不足 |
需要到使用者中心進行儲值 |
| 109 |
今日發送超過限額 |
如果設定了日發送數量,則每個接收號碼不得超過這個數量 |
| 110 |
應用秘鑰(AppSecret)錯誤 |
檢查AppSecret是否輸入錯誤,或是否已在使用者中心進行了秘鑰重設 |
| 111 |
帳號不存在 |
請聯絡工作人員申請帳號 |
| 1000 |
系統位置錯誤 |
請聯絡工作人員或技術人員檢查原因 |
完整代碼:
# -*- coding: utf-8 -*-import zhenzismsclient as smsclientimport randomcode = ‘‘;for num in range(1,5): code = code + str(random.randint(0, 9));print(code);client = smsclient.ZhenziSmsClient(‘100000‘, ‘NmMzZDFmNjFkNjcwNDc1MmZ‘);print(client.send(‘12411111111‘, ‘您的驗證碼為‘+code))
python傳送簡訊驗證碼