📅  最后修改于: 2023-12-03 15:02:50.838000             🧑  作者: Mango
mail.send_message
烧瓶不工作,SSL ==> 465 - Python在使用 Python 中的 mail.send_message
函数来发送邮件时,如果要使用 SMTP SSL 的端口 465,烧瓶(Flask)框架下的邮件功能会失效。
烧瓶框架下的 mail.send_message
函数仅支持常规的 SMTP 端口(25 或 587),而不支持 SMTP SSL 端口(465)。这是因为烧瓶的邮件功能实现是通过基于标准的 SMTP 服务器实现的,而不是基于 SSL 的 SMTP 调用。
要在烧瓶框架下使用 SMTP SSL 端口,可以使用 Python 的标准库 smtplib
来实现。下面是代码示例:
import smtplib
from email.message import EmailMessage
msg = EmailMessage()
msg.set_content("内容")
msg['Subject'] = "主题"
msg['From'] = "发送者"
msg['To'] = "接收者"
with smtplib.SMTP_SSL('smtp.gmail.com', 465) as smtp:
smtp.login('发件人邮箱', '授权码')
smtp.send_message(msg)
通过使用 smtplib.SMTP_SSL
来连接 SSL 端口,并使用标准的 EmailMessage
类来构造邮件内容和地址。同时也需要注意的是,使用 SSL 端口时需要配置发件人邮箱和授权码。
在烧瓶框架下使用 SMTP SSL 的端口 465 发送邮件时,需要使用 Python 的标准库 smtplib
来实现,同时需要注意配置好发件人邮箱和授权码。