美文网首页
2018-04-26 flask-mail

2018-04-26 flask-mail

作者: 纳米片 | 来源:发表于2018-04-26 19:08 被阅读0次

    flask-mail

    1、安装

    pip install flask-mail

    2、配置

    app.config['MAIL_SERVER'] = 'smtp.qq.com'  #qq邮箱发送邮件服务器
    app.config['MAIL_PORT'] = 465 # 端口号为465或587
    app.config['MAIL_USE_SSL'] = True #qq邮箱需使用ssl,默认为Flase
    app.config['MAIL_USERNAME'] = '24855@qq.com' #发件箱用户名
    app.config['MAIL_PASSWORD'] = 'xxxxxxxxxx' #填写授权码
    app.config['MAIL_DEFAULT_SENDER'] = '24855@qq.com'#默认发送邮箱
    mail = Mail(app)
    

    3、异步发送邮件

    def send_async_email(app, msg):
    '''很多 Flask 扩展都假设已经存在激活的程序上下文和请求
    上下文。Flask-Mail 中的 send() 函数使用 current_app ,
    因此必须激活程序上下文。不过,在不同线程中执行 
    mail.send() 函数时,程序上下文要使用 app.app_context() 人工创建。'''
       
      with app.app_context():
            mail.send(msg)
    
    def index():
        msg = Message(subject='Hello World',
                      sender="24855@qq.com",  # 需要使用默认发送者则不用填
                      recipients=['248551@qq.com'])
        # 邮件内容会以文本和html两种格式呈现,而你能看到哪种格式取决于你的邮件客户端。
        msg.body = 'sended by flask-email'
        msg.html = '<b>测试Flask发送邮件<b>'
        thread = Thread(target=send_async_email, args=[app, msg])
        thread.start()
        return '<h1>邮件发送成功</h1>'
    

    相关文章

      网友评论

          本文标题:2018-04-26 flask-mail

          本文链接:https://www.haomeiwen.com/subject/hbmmlftx.html