学习“Flask Web Development —— Email(https://segmentfault.com/a/1190000002409…)”这一节遇到的问题。
=========================以下是原文======================================
在开发过程中如果能连接到一个外部SMTP服务器会更方便。示例6-1展示了如何配置应用程序通过谷歌的Gmail帐户发送电子邮件。
示例6-1. hello.py:Flask-Mail配置Gmail
import os
# ...
app.config['MAIL_SERVER'] = 'smtp.googlemail.com'
app.config['MAIL_PORT'] = 587
app.config['MAIL_USE_TLS'] = True
app.config['MAIL_USERNAME'] = os.environ.get('MAIL_USERNAME')
app.config['MAIL_PASSWORD'] = os.environ.get('MAIL_PASSWORD')
建议:永远不要将账户证书直接写在你的脚本里面,尤其是如果你打算将你的的工作开源。为了保护你的帐户信息,必须让脚本从你的配置环境中导入敏感信息。
持有email服务器用户名和密码的两个变量需要在环境中定义。如果你是使用Linux或Mac OS X上的bash,你可以设置这些变量如下:
(venv) $ export MAIL_USERNAME=<Gmail username>
(venv) $ export MAIL_PASSWORD=<Gmail password>
===============================以上为原文===============================
“bash: 未预期的符号 `newline’ 附近有语法错误”
原文说:
(venv) $ export MAIL_USERNAME=<Gmail username>
(venv) $ export MAIL_PASSWORD=<Gmail password>
如果按照该命令行敲进去,报如上错误。此处应该去掉<>,加引号即可。例如:
hxxx987@Gubuntu:~/flasky$ export MAIL_USERNAME='hxxx987@126.com'
hxxx987@Gubuntu:~/flasky$ export MAIL_PASSWORD='hxxx98'
hxxx987@Gubuntu:~/flasky$ echo $MAIL_USERNAME
hxxx987@126.com
hxxx987@Gubuntu:~/flasky$ echo $MAIL_PASSWORD
hxxx98
即可