Пробовал конфиг в application.conf
SMTPгероику играть! с sendgrid конфигурацией
mail.smtp.host=smtp.sendgrid.net
mail.smtp.user=${SENDGRID_USERNAME}
mail.smtp.pass=${SENDGRID_PASSWORD}
И в контроллере
MultiPartEmail email = new MultiPartEmail();
//... setting from,to,subject,content...
Mail.send(email); //using Play's util
Но исключение происходит, говоря плохо учетные данные пользователя при проверке подлинности сервера SMTP.
Одна вещь, которую я замечаю, что, когда толчок Heroku и запустить приложение, он хотел бы предупредить:
WARNING: Cannot replace SENDGRID_USERNAME in configuration (mail.smtp.user=${SENDGRID_USERNAME})
WARNING: Cannot replace ENV_SENDGRID_PASSWORD in configuration (mail.smtp.pass=${SENDGRID_PASSWORD})
Это может быть вызвано флагом прекомпиляции горит при развертывании ?? Вот мой Procfile
:
web: play run --http.port=$PORT --%prod
Это ошибка на 'git push' времени? Если это так, вы можете игнорировать его. Вы получаете исключение из 'Mail.send()'? –
без ошибок на 'git push', только предупреждение. Исключением является 'Mail.send()', говорящий о неверных учетных данных пользователя. Я пробовал, если я использую 'System.getenv (« SENDGRID_USERNAME »)' непосредственно в коде и использую 'send' MultipartEmail', он может отправить. Но в этом случае я не могу протестировать локально со встроенным почтовым макетом. – jackysee