Я разработал блоговое приложение для своих учеников, где они могут отправить свои тексты инструктору для проверки и обратной связи. При нажатии кнопки «Отправить» приложение берет текст, который студент написал в текстовом поле, и отправляет его мне в тексте электронного письма. Он отлично работал на моем компьютере, но как только я загрузил его на сервер (который использует cPanel, тьфу), он перестал работать.
Сначала я получил ошибку, потому что я настроил учетную запись gmailпотому что приложение не позволяло небезопасным приложениям получать к нему доступ, но я изменил его, и оно, кажется, работает нормально.
Вот код настройки для флеш-почты в моем init . py-файл:
app.config.update(dict(
DEBUG = True,
MAIL_SERVER = 'smtp.gmail.com',
MAIL_PORT = 587,
MAIL_USE_TLS = True,
MAIL_USE_SSL = False,
MAIL_USERNAME = 'emailaddress@gmail.com',
MAIL_PASSWORD = 'password',
))
mail = Mail(app)
А вот фактический код реализации в моем файле rout.py:
if form.submit.data:
textsubmit = form.content.data
plaintext = BeautifulSoup(textsubmit)
userid = current_user.id
msg = Message("Text from {}".format(userid),
sender="emailaddress@gmail.com",
recipients=["instructoraddress@gmail.com"])
msg.body = plaintext
mail.send(msg)
return redirect(url_for('dashboard'))
Всякий раз, когда я нажимаю кнопку "отправить", я получаю сообщение об ошибкевеб-страница с сообщением «Неполный ответ получен из приложения»
Единственное сообщение об ошибке на cPanel гласит, что mail.send (msg) не может быть выполнен, но я понятия не имею, почему.