按照《flask web开发》书中方法操作,发不出确认邮件是为什么?,,import osbas


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>')

可以参考我写的项目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一样。

换成你的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')

编橙之家文章,

评论关闭