最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Flask項目中實現(xiàn)短信驗證碼和郵箱驗證碼功能

 更新時間:2019年12月05日 10:10:12   作者:__tian__  
這篇文章主要介紹了Flask項目中實現(xiàn)短信驗證碼和郵箱驗證碼功能,需本文通過截圖實例代碼的形式給大家介紹的非常詳細,需要的朋友可以參考下

Flask是一個用Python編寫的Web應(yīng)用程序框架,F(xiàn)lask是python的web框架,最大的特征是輕便,讓開發(fā)者自由靈活的兼容要開發(fā)的feature。 它由 Armin Ronacher 開發(fā),他領(lǐng)導一個名為Pocco的國際Python愛好者團隊。 Flask基于Werkzeug WSGI工具包和Jinja2模板引擎。兩者都是Pocco項目。

這篇文章給大家介紹Flask項目中實現(xiàn)短信驗證碼和郵箱驗證碼功能,具體內(nèi)容如下所示:

一、發(fā)送郵箱驗證碼

1、使用QQ郵箱發(fā)送驗證碼

①配置

開啟pop3/smtp服務(wù)

2、應(yīng)用

①前端頁面

②config.py

# 郵箱配置
# MAIL_USE_TLS:端口號587
# MAIL_USE_SSL:端口號465
# QQ郵箱不支持非加密方式發(fā)送郵件
# 發(fā)送者郵箱的服務(wù)器地址
MAIL_SERVER = "smtp.qq.com"
MAIL_PORT = '587'
MAIL_USE_TLS = True
# MAIL_USE_SSL
MAIL_USERNAME = "1414518976@qq.com"
MAIL_PASSWORD = "*****" # 生成授權(quán)碼,授權(quán)碼是開啟smtp服務(wù)后給出的
MAIL_DEFAULT_SENDER = 1414518976@qq.com

③views.py

點擊獲取驗證碼,進入到以下視圖,發(fā)送郵件,把驗證碼存到memcache數(shù)據(jù)庫。

from flask_mail import Message,Mail
mail = Mail()
@bp.route('/email_captcha/')
@login_requires
def email_captcha():
  email = request.args.get('email')
  if not email:
    return restful.params_error('請輸入郵箱') #restful. 封裝的函數(shù),返回前端數(shù)據(jù)
  '''
  生成隨機驗證碼,保存到memcache中,然后發(fā)送驗證碼,與用戶提交的驗證碼對比
  '''
  captcha = str(uuid.uuid1())[:6] # 隨機生成6位驗證碼
  # 給用戶提交的郵箱發(fā)送郵件
  message = Message('Python論壇郵箱驗證碼', recipients=[email], body='您的驗證碼是:%s' % captcha)
  try:
    mail.send(message) # 發(fā)送
  except:
    return restful.server_error()
  mbcache.set(email, captcha)
  return restful.success()

點擊立即修改,

        以post請求發(fā)到后臺,對用戶提交的數(shù)據(jù)進行校驗:拿出memcache中存儲的驗證碼與用戶提交的驗證碼對比,校驗郵箱格式。校驗通過后把新郵箱保存到數(shù)據(jù)庫,返回前端提示信息。郵箱驗證功能完成。

二、實現(xiàn)短信驗證碼

1、平臺以及配置

平臺:阿里大于

配置:1、添加模板

 2、添加簽名

3、獲取

即下面的key和secret

2、flask中使用

config.py

#發(fā)送短信驗證碼配置
KEY="*******"
SECRET="*******"
alidayu.py發(fā)送短信功能實現(xiàn)
from aliyunsdkcore.client import AcsClient #需要先下載包
from aliyunsdkcore.request import CommonRequest
import config
def send_sms(telephone, captcha):
  client = AcsClient(config.KEY, config.SECRET, 'cn-hangzhou')
  request = CommonRequest()
  request.set_accept_format('json')
  request.set_domain('dysmsapi.aliyuncs.com')
  request.set_method('POST')
  request.set_protocol_type('https') # https | http
  request.set_version('2017-05-25')
  request.set_action_name('SendSms')
  request.add_query_param('RegionId', "cn-hangzhou")
  request.add_query_param('PhoneNumbers', telephone) #發(fā)送的手機號
  request.add_query_param('SignName', "flask論壇") #SignName簽名
  request.add_query_param('TemplateCode', "SMS_174806057") #模板id
  code = {}
  code['code'] = captcha
  request.add_query_param('TemplateParam', code) #模板中要填入的數(shù)據(jù)
  response = client.do_action(request)
  # python2: print(response)
  return str(response, encoding='utf-8')

調(diào)用是send_sms('手機號','驗證碼'),即可發(fā)送短信。(當然余額得有錢.)

總結(jié)

以上所述是小編給大家介紹的Flask項目中實現(xiàn)短信驗證碼和郵箱驗證碼功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • Python?Pandas實現(xiàn)將嵌套JSON數(shù)據(jù)轉(zhuǎn)換DataFrame

    Python?Pandas實現(xiàn)將嵌套JSON數(shù)據(jù)轉(zhuǎn)換DataFrame

    對于復雜的JSON數(shù)據(jù)進行分析時,通常的做法是將JSON數(shù)據(jù)結(jié)構(gòu)轉(zhuǎn)換為Pandas?DataFrame,所以本文就來看看將嵌套JSON數(shù)據(jù)轉(zhuǎn)換為Pandas?DataFrame的具體方法吧
    2024-01-01
  • pycharm如何設(shè)置官方中文(如何漢化)

    pycharm如何設(shè)置官方中文(如何漢化)

    這篇文章主要介紹了pycharm如何設(shè)置官方中文(如何漢化),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-12-12
  • django模型動態(tài)修改參數(shù),增加 filter 字段的方式

    django模型動態(tài)修改參數(shù),增加 filter 字段的方式

    這篇文章主要介紹了django模型動態(tài)修改參數(shù),增加 filter 字段的方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • python中cv2模塊安裝詳細圖文教程

    python中cv2模塊安裝詳細圖文教程

    在Python中cv2是OpenCV庫的一個模塊,這是一個開源的計算機視覺和機器學習軟件庫,下面這篇文章主要給大家介紹了關(guān)于python中cv2模塊安裝的相關(guān)資料,需要的朋友可以參考下
    2024-05-05
  • python golang中g(shù)rpc 使用示例代碼詳解

    python golang中g(shù)rpc 使用示例代碼詳解

    這篇文章主要介紹了python golang中g(shù)rpc 使用,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-06-06
  • Python中的基本數(shù)據(jù)類型講解

    Python中的基本數(shù)據(jù)類型講解

    這篇文章介紹了Python中的基本數(shù)據(jù)類型,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • Python爬取愛奇藝電影信息代碼實例

    Python爬取愛奇藝電影信息代碼實例

    這篇文章主要介紹了Python爬取愛奇藝電影信息代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • python中reversed與reverse的區(qū)別解析

    python中reversed與reverse的區(qū)別解析

    reverse()是python中列表的一個內(nèi)置方法(在字典、字符串和元組中沒有這個內(nèi)置方法),用于列表中數(shù)據(jù)的反轉(zhuǎn),這篇文章主要介紹了python中reversed與reverse的區(qū)別,需要的朋友可以參考下
    2023-03-03
  • Python批量實現(xiàn)Word/EXCEL/PPT轉(zhuǎn)PDF

    Python批量實現(xiàn)Word/EXCEL/PPT轉(zhuǎn)PDF

    在日常辦公和文檔處理中,有時我們需要將多個Word文檔、Excel表格或PPT演示文稿轉(zhuǎn)換為PDF文件,本文將介紹如何使用Python編程語言批量實現(xiàn)將多個Word、Excel和PPT文件轉(zhuǎn)換為PDF文件,需要的可以參考下
    2023-09-09
  • mac安裝python3后使用pip和pip3的區(qū)別說明

    mac安裝python3后使用pip和pip3的區(qū)別說明

    這篇文章主要介紹了mac安裝python3后使用pip和pip3的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-09-09

最新評論

南乐县| 万山特区| 玉田县| 阿图什市| 郯城县| 六安市| 桓台县| 蒙阴县| 沅江市| 沂水县| 闸北区| 江西省| 孟津县| 福建省| 梅河口市| 仪征市| 涿鹿县| 循化| 盱眙县| 定远县| 磐石市| 依兰县| 休宁县| 苍山县| 宁城县| 仁怀市| 乌拉特后旗| 长岛县| 拜城县| 祁东县| 酉阳| 建湖县| 齐齐哈尔市| 咸阳市| 锡林浩特市| 襄垣县| 临沂市| 连平县| 彭州市| 巴楚县| 弥渡县|