我已经用ruby 2.6.5创建了Rails 6应用程序。使用SMTP发送电子邮件。在config/environment/*rb文件中添加了配置。
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
user_name: ENV['SENDMAIL_USERNAME'],
password: ENV['SENDMAIL_PASSWORD'],
domain: ENV['MAIL_HOST'],
address: 'smtp.gmail.com',
port: '587',
authentication: :plain,
enable_starttls_auto: true
}
获取错误:Net::SMTPAuthenticationError:534-5.7.14<https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbtOS从以下链接验证captcha后
[https://accounts.google.com/b/1/DisplayUnlockCaptcha][1]
它工作了一段时间,然后又开始抛出相同的错误。我还为我的电子邮件启用了不太安全的应用程序。
这是我在谷歌SMTP配置中使用动作邮件时遇到的常见问题。我曾经在下面的几个步骤中解决它。
- 尝试手动登录到谷歌帐户,位置和rails服务器所在的位置相同,并检查captcha是否显示
- 一旦邮件在rails服务器上工作,就再也不会手动登录谷歌帐户了
- 尝试将身份验证::plain更改为:login