久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Django之騰訊云短信的實(shí)現(xiàn)

瀏覽:156日期:2024-09-29 13:58:15

簡(jiǎn)介

由于項(xiàng)目在注冊(cè)、登錄、找回密碼 時(shí)需要發(fā)送短信驗(yàn)證的功能,我們使用騰訊云短信做。

為什么要用騰訊云短信呢? 因?yàn)樽?cè)就送 100條免費(fèi)短信 的額度。

實(shí)現(xiàn)

注冊(cè)騰訊云

注冊(cè)一個(gè)騰訊云賬戶,騰訊云中提供了很多功能:云服務(wù)器、云存儲(chǔ)你、云直播、云短信等很多功能。

注冊(cè)地址: https://cloud.tencent.com/

注冊(cè)并要實(shí)名認(rèn)證

開(kāi)通云短信

Django之騰訊云短信的實(shí)現(xiàn)

Django之騰訊云短信的實(shí)現(xiàn)

創(chuàng)建應(yīng)用

創(chuàng)建應(yīng)用并將應(yīng)用中生成的 SDK AppID 和 App Key 復(fù)制下來(lái),之后通過(guò)python發(fā)送短信時(shí)需要用到。

Django之騰訊云短信的實(shí)現(xiàn)

Django之騰訊云短信的實(shí)現(xiàn)

創(chuàng)建簽名

在騰訊云短信簽名時(shí)需要認(rèn)證,認(rèn)證需要填寫簽名類型:網(wǎng)站、APP、小程序、公眾號(hào),前三種需要提供企業(yè)資質(zhì)等復(fù)雜的東西,個(gè)人公眾號(hào)認(rèn)證會(huì)比較便捷,所以推薦個(gè)人開(kāi)發(fā)的話使用 公眾號(hào) 進(jìn)行簽名。

so,咱們需要先 申請(qǐng)一個(gè)公眾號(hào) 然后 創(chuàng)建簽名

申請(qǐng)微信訂閱號(hào)

注冊(cè)地址: https://mp.weixin.qq.com/

Django之騰訊云短信的實(shí)現(xiàn)

Django之騰訊云短信的實(shí)現(xiàn)

創(chuàng)建簽名

Django之騰訊云短信的實(shí)現(xiàn)

Django之騰訊云短信的實(shí)現(xiàn)

創(chuàng)建模板

Django之騰訊云短信的實(shí)現(xiàn)

發(fā)送短信

上述的準(zhǔn)備工作做完中我們開(kāi)通相關(guān)服務(wù)并獲取到如下幾個(gè)值:

# 創(chuàng)建應(yīng)用,獲取到 appid 和 appkey# 創(chuàng)建簽名,獲取 簽名內(nèi)容# 創(chuàng)建模板,獲取 模板ID

接下來(lái)開(kāi)始使用Python發(fā)送短信。

安裝SDK

pip install qcloudsms_py

基于SDK發(fā)送短信

#!/usr/bin/env python# -*- coding:utf-8 -*-import ssl# ssl._create_default_https_context = ssl._create_unverified_contextfrom qcloudsms_py import SmsMultiSender, SmsSingleSenderfrom qcloudsms_py.httpclient import HTTPErrordef send_sms_single(phone_num, template_id, template_param_list): ''' 單條發(fā)送短信 :param phone_num: 手機(jī)號(hào) :param template_id: 騰訊云短信模板ID :param template_param_list: 短信模板所需參數(shù)列表,例如:【驗(yàn)證碼:{1},描述:{2}】,則傳遞參數(shù) [888,666]按順序去格式化模板 :return: ''' appid = 112142311 # 自己應(yīng)用ID appkey = '8cc5b87123y423423412387930004' # 自己應(yīng)用Key sms_sign = 'Python之路' # 自己騰訊云創(chuàng)建簽名時(shí)填寫的簽名內(nèi)容(使用公眾號(hào)的話這個(gè)值一般是公眾號(hào)全稱或簡(jiǎn)稱) sender = SmsSingleSender(appid, appkey) try: response = sender.send_with_param(86, phone_num, template_id, template_param_list, sign=sms_sign) except HTTPError as e: response = {’result’: 1000, ’errmsg’: '網(wǎng)絡(luò)異常發(fā)送失敗'} return responsedef send_sms_multi(phone_num_list, template_id, param_list): ''' 批量發(fā)送短信 :param phone_num_list:手機(jī)號(hào)列表 :param template_id:騰訊云短信模板ID :param param_list:短信模板所需參數(shù)列表,例如:【驗(yàn)證碼:{1},描述:{2}】,則傳遞參數(shù) [888,666]按順序去格式化模板 :return: ''' appid = 112142311 appkey = '8cc5b87123y423423412387930004' sms_sign = 'Python之路' sender = SmsMultiSender(appid, appkey) try: response = sender.send_with_param(86, phone_num_list, template_id, param_list, sign=sms_sign) except HTTPError as e: response = {’result’: 1000, ’errmsg’: '網(wǎng)絡(luò)異常發(fā)送失敗'} return responseif __name__ == ’__main__’: result1 = send_sms_single('15131255089', 548760, [666, ]) print(result1) result2 = send_sms_single( ['15131255089', '15131255089', '15131255089', ],548760, [999, ]) print(result2)

關(guān)于頻率限制

騰訊云短信后臺(tái)可以進(jìn)行 短信頻率 的限制。

但是,由于我們是免費(fèi)用戶所以無(wú)法進(jìn)行設(shè)置,只能使用默認(rèn)的配置(30秒發(fā)1條/1小時(shí)發(fā)5條/1天發(fā)10條)。

Django之騰訊云短信的實(shí)現(xiàn)

到此這篇關(guān)于Django之騰訊云短信的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Django 騰訊云短信內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Django
相關(guān)文章:
主站蜘蛛池模板: 长岛县| 济南市| 永和县| 太谷县| 怀集县| 齐齐哈尔市| 绵竹市| 北宁市| 长春市| 北票市| 汾阳市| 富顺县| 林州市| 额济纳旗| 新宁县| 东明县| 娄烦县| 阳谷县| 原平市| 都昌县| 青海省| 滁州市| 柯坪县| 凤翔县| 潢川县| 平潭县| 喀喇| 云安县| 临湘市| 汽车| 漳平市| 永安市| 龙川县| 金门县| 邢台市| 璧山县| 南江县| 星座| 兴安盟| 玛曲县| 南江县|