首页 > 解决方案 > 烧瓶邮件仅在主脚本中工作

问题描述

我有一个 Flask 服务器,我正在使用 Flask-mail。通过 pip 安装后,我flask_server.py以这种方式配置文件:

from flask_mail import Mail, Message 

app = flask.Flask(__name__, static_folder='static')

app.config['MAIL_SERVER']='smtp.gmail.com'
app.config['MAIL_PORT'] = 465
app.config['MAIL_USERNAME'] = 'myemail@gmail.com'
app.config['MAIL_PASSWORD'] = 'mypw'
app.config['MAIL_USE_TLS'] = False
app.config['MAIL_USE_SSL'] = True
mail= Mail(app)

总是在flask_server.py我有这个发送邮件的功能:

def send_email():
   msg = Message('Title', sender = 'myemail@gmail.com', recipients = ['target@gmail.com'])
   msg.body = "Hello"
   mail.send(msg)

如果我尝试在一个 API 中发送邮件,它可以工作。例如:

@app.route('/computeModels', methods=['GET', 'POST'])
def compute_models():
    send_email()

现在我想删除调用send_email()并将其放入另一个脚本的函数中。

models.py我以这种方式工作:

import flask_server as fs

def try_mail():
    fs.send_email()
    

该功能像第一种情况一样执行,但电子邮件没有到达。

标签: pythonflaskflask-mail

解决方案


推荐阅读