您的位置:首页技术文章
文章详情页

python - 《flask web开发》中为什么发不出确认邮件?

【字号: 日期:2022-08-25 16:27:08浏览:86作者:猪猪

问题描述

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一样。

标签: Python 编程
相关文章: