欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

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

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

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

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

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

①配置

開啟pop3/smtp服務(wù)

2、應(yīng)用

①前端頁面

②config.py

# 郵箱配置
# MAIL_USE_TLS:端口號(hào)587
# MAIL_USE_SSL:端口號(hào)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

點(diǎn)擊獲取驗(yàn)證碼,進(jìn)入到以下視圖,發(fā)送郵件,把驗(yàn)證碼存到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('請(qǐng)輸入郵箱') #restful. 封裝的函數(shù),返回前端數(shù)據(jù)
  '''
  生成隨機(jī)驗(yàn)證碼,保存到memcache中,然后發(fā)送驗(yàn)證碼,與用戶提交的驗(yàn)證碼對(duì)比
  '''
  captcha = str(uuid.uuid1())[:6] # 隨機(jī)生成6位驗(yàn)證碼
  # 給用戶提交的郵箱發(fā)送郵件
  message = Message('Python論壇郵箱驗(yàn)證碼', recipients=[email], body='您的驗(yàn)證碼是:%s' % captcha)
  try:
    mail.send(message) # 發(fā)送
  except:
    return restful.server_error()
  mbcache.set(email, captcha)
  return restful.success()

點(diǎn)擊立即修改,

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

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

1、平臺(tái)以及配置

平臺(tái):阿里大于

配置:1、添加模板

 2、添加簽名

3、獲取

即下面的key和secret

2、flask中使用

config.py

#發(fā)送短信驗(yàn)證碼配置
KEY="*******"
SECRET="*******"
alidayu.py發(fā)送短信功能實(shí)現(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ā)送的手機(jī)號(hào)
  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('手機(jī)號(hào)','驗(yàn)證碼'),即可發(fā)送短信。(當(dāng)然余額得有錢.)

總結(jié)

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

相關(guān)文章

  • 刪除pandas中產(chǎn)生Unnamed:0列的操作

    刪除pandas中產(chǎn)生Unnamed:0列的操作

    這篇文章主要介紹了刪除pandas中產(chǎn)生Unnamed:0列的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • PyQt5固定窗口大小的方法

    PyQt5固定窗口大小的方法

    今天小編就為大家分享一篇PyQt5固定窗口大小的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • Python Nose框架編寫測(cè)試用例方法

    Python Nose框架編寫測(cè)試用例方法

    這篇文章主要介紹了Python Nose框架編寫測(cè)試用例方法,需要的朋友可以參考下
    2017-10-10
  • Python實(shí)現(xiàn)獲取域名所用服務(wù)器的真實(shí)IP

    Python實(shí)現(xiàn)獲取域名所用服務(wù)器的真實(shí)IP

    本文是給大家分享的使用python獲取到域名所在服務(wù)器的真實(shí)IP,原因是現(xiàn)在很多的網(wǎng)站都使用了CDN,大家很難直接查到域名的服務(wù)器的IP,本文是使用了一個(gè)巧妙的方法,詳情請(qǐng)仔細(xì)看看下文吧
    2015-10-10
  • 淺析python打包工具distutils、setuptools

    淺析python打包工具distutils、setuptools

    python包在開發(fā)中十分常見,一般的使用套路是所有的功能做一個(gè)python模塊包,打包模塊,然后發(fā)布,安裝使用。這篇文章給大家介紹了python打包工具distutils、setuptools的相關(guān)知識(shí),感興趣的朋友一起看看吧
    2018-04-04
  • 利用python求解物理學(xué)中的雙彈簧質(zhì)能系統(tǒng)詳解

    利用python求解物理學(xué)中的雙彈簧質(zhì)能系統(tǒng)詳解

    這篇文章主要給大家介紹了關(guān)于利用python如何求解物理學(xué)中的雙彈簧質(zhì)能系統(tǒng)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-09-09
  • python opencv之分水嶺算法示例

    python opencv之分水嶺算法示例

    這篇文章主要介紹了python opencv之分水嶺算法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-02-02
  • Keras構(gòu)建神經(jīng)網(wǎng)絡(luò)踩坑(解決model.predict預(yù)測(cè)值全為0.0的問題)

    Keras構(gòu)建神經(jīng)網(wǎng)絡(luò)踩坑(解決model.predict預(yù)測(cè)值全為0.0的問題)

    這篇文章主要介紹了Keras構(gòu)建神經(jīng)網(wǎng)絡(luò)踩坑(解決model.predict預(yù)測(cè)值全為0.0的問題),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • python實(shí)現(xiàn)簡(jiǎn)單的井字棋小游戲

    python實(shí)現(xiàn)簡(jiǎn)單的井字棋小游戲

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)簡(jiǎn)單的井字棋小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • 基于Python爬取股票數(shù)據(jù)過程詳解

    基于Python爬取股票數(shù)據(jù)過程詳解

    這篇文章主要介紹了基于Python爬取股票數(shù)據(jù)過程詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10

最新評(píng)論