python - 《flask web開發》中為什么發不出確認郵件?
問題描述
import osbasedir = os.path.abspath(os.path.dirname(__file__))class Config: SECRET_KEY = os.environ.get(’SECRET_KEY’) or ’hard to guess string’ SQLALCHEMY_COMMIT_ON_TEARDOWN = True SQLALCHEMY_TRACK_MODIFICATIONS = False MAIL_SERVER = ’smtp.qq.com’ MAIL_PORT = 25 MAIL_USE_TLS = True MAIL_USERNAME = os.environ.get(’MAIL_USERNAME’) MAIL_PASSWORD = os.environ.get(’MAIL_PASSWORD’) FLASKY_MAIL_SUBJECT_PREFIX = ’[Flasky]’ FLASKY_MAIL_SENDER = ’Flasky Admin <flasky@example.com>’ FLASKY_ADMIN = os.environ.get(’FLASKY_ADMIN’) @staticmethod def init_app(app):pass
直接從GITHUB上抄下來的,那幾個郵箱值不知道該改哪幾個?可能不止一處錯誤
報錯是 raise SMTPSenderRefused(code, resp, from_addr)smtplib.SMTPSenderRefused: (503, b’Error: need EHLO and AUTH first !’, ’=?utf-8?q?Flasky_Admin?= <flasky@example.com>’)
問題解答
回答1:換成你的qq帳號或者163郵箱帳號
具體怎么做,我忘了,你自己看看我以前寫的代碼吧。。。我也是閑的
# coding: utf-8import osfrom datetime import datetimefrom flask.ext.moment import Momentfrom flask.ext.script import Managerfrom flask import Flask,render_template,session,redirect,url_for,flashfrom flask.ext.bootstrap import Bootstrapfrom flask.ext.wtf import Formfrom wtforms import StringField,SubmitFieldfrom wtforms.validators import Requiredfrom flask.ext.sqlalchemy import SQLAlchemyfrom flask.ext.script import Shellfrom flask.ext.migrate import Migrate,MigrateCommandfrom flask.ext.mail import Mailfrom flask.ext.mail import Messagebasedir = os.path.abspath(os.path.dirname(__file__))app=Flask(__name__)app.config[’SQLALCHEMY_DATABASE_URI’]=’sqlite:///’+os.path.join(basedir,’data.sqlite’)app.config[’SQLALCHEMY_COMMIT_ON_TEARDOWN’]=Trueapp.config[’SECRET_KEY’]=’hard to guess string’app.config[’MAIL_SERVER’]=’smtp.qq.com’app.config[’MAIL_PORT’]=465#app.config[’DEBUG’]=Trueapp.config[’MAIL_USE_TLS’]=Falseapp.config[’MAIL_USE_SSL’]=Trueapp.config[’MAIL_USERNAME’]=’xxxxx@qq.com’app.config[’MAIL_PASSWORD’]=’xxxxxx’(好像是SMTP,我把自己的隱藏了)app.config[’FLASKY_MAIL_SUBJECT_PREFIX’]=’[FLASKY]’app.config[’FLASKY_MAIL_SENDER’]=’Flasky Admin<xxxxxxxx@qq.com>’app.config[’FLASKY_ADMIN’]=os.environ.get(’FLASKY_ADMIN’)回答2:
可以參考我寫的項目flask-lovehate
MAIL_SERVER = ’smtp.qq.com’ MAIL_PORT = 465 MAIL_USE_SSL = True MAIL_USERNAME = os.environ.get(’MAIL_USERNAME’) MAIL_PASSWORD = os.environ.get(’MAIL_PASSWORD’) FLASKY_MAIL_SUBJECT_PREFIX = ’[愛與生的苦惱]’ FLASKY_MAIL_SENDER = os.environ.get(’MAIL_USERNAME’)
MAIL_USERNAME是郵箱,MAIL_PASSWORD是QQ Mail給的授權嗎,在郵箱后臺開啟得到,FLASKY_MAIL_SENDER可以設為與MAIL_USERNAME一樣。
相關文章:
1. javascript - js中遞歸與for循環同時發生的時候,代碼的執行順序是怎樣的?2. 小程序怎么加外鏈,語句怎么寫!求救新手,開文檔沒發現3. python - linux怎么在每天的凌晨2點執行一次這個log.py文件4. php如何獲取訪問者路由器的mac地址5. android - 鍵盤遮擋RecyclerView6. 如何分別在Windows下用Winform項模板+C#,在MacOSX下用Cocos Application項目模板+Objective-C實現一個制作游戲的空的黑窗口?7. javascript - jQuery each 方法第三個參數args 如何解釋?8. javascript - 在 vue里面用import引入js文件,結果為undefined9. java - new + 類名,一定需要申明一個對象嗎?10. javascript - ...mapGetters和...mapState獲取到的state,怎么拿來在methods中操作?
