当我尝试在我的rails应用程序中发送通知时,我收到以下错误
Net::SMTPAuthenticationError (535-5.7.1 Username and Password not accepted. Learn more at
):
app/models/friendship.rb:6:in `send_request'
app/controllers/friends_controller.rb:21:in `make_friendship'
我的development.rb邮件配置设置是
# Don't care if the mailer can't send
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
# Gmail SMTP server setup
config.action_mailer.smtp_settings = {
:address => "smtp.gmail.com",
:enable_starttls_auto => true,
:port => 587,
:domain => '@example.com',
:authentication => :plain,
:user_name => 'user@gmail.com',
:password => 'secret'
}
答案 0 :(得分:18)
我有这个,它对我有用:
ActionMailer::Base.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:user_name => "name@example.com",
:password => 'password',
:authentication => "plain",
:enable_starttls_auto => true
}
答案 1 :(得分:11)
登录您在浏览器中使用的帐户,然后访问此页面:
http://www.google.com/accounts/DisplayUnlockCaptcha
这为您提供了一个10分钟的登录时间,您可以使用要访问帐户的应用进行登录。回到你的Rails应用程序并让它发送电子邮件,之后一切都应该工作。
答案 2 :(得分:7)
我有一个类似的配置工作正常,但有一段时间我得到这个错误,我怀疑这是因为谷歌标记该帐户由于某种原因潜在滥用,登录速度太快(每次发送邮件)
您可以通过Web界面手动登录再次使用,然后键入CAPTCHA。如果经常发生这种情况,我可能会考虑使用其他一些解决方案,例如使用自己的MTA或至少在Rails和gmail之间的本地MTA,能够发送多封邮件而无需重新登录。在这种情况下,您甚至可以自己发送邮件,而无需通过Gmail,只需确保设置正确的SPF记录等。
答案 3 :(得分:4)
您错过了错误消息中的链接! :)
Net::SMTPAuthenticationError (535-5.7.1 Username and Password not accepted. Learn more at https://support.google.com/mail/bin/answer.py?hl=en&answer=14257
因此,有关详细信息,请参阅:https://support.google.com/mail/bin/answer.py?hl=en&answer=14257
答案 4 :(得分:4)
我遇到了同样的问题:它来自我的桌面(在开发环境中),但它从生产环境(瑞典的服务器......)失败了。 如果Google阻止了登录尝试,您必须登录您的Gmail帐户并查看电子邮件。