【问题标题】:530 5.7.0 Must issue a STARTTLS command first530 5.7.0 必须先发出 STARTTLS 命令
【发布时间】:2017-01-10 10:02:53
【问题描述】:

我在尝试通过 Net:SMTP 在 ruby​​ 2.2.6、rails 5.0.1 上发送电子邮件时遇到此错误,看到了很多主题,但那里没有任何实际工作,我可能会遗漏一些东西,外部帮助会对人好点 !这是我在基本控制器中发送邮件的方式: Net::SMTP.start('smtp.gmail.com') do |smtp| smtp.send_message message,'mail@gmail.com', 'mail@gmail.com'

这是我用于邮件的 dev.rb conf:

config.action_mailer.raise_delivery_errors = true

config.action_mailer.perform_caching = true

config.action_mailer.default_url_options = { :host => "localhost:3000" }
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
enable_starttls_auto: true,
  address:              'smtp.gmail.com',
  domain:               'localhost:3000',
  port:                 587,
  user_name:            'mail@gmail.com',
  password:             'pass',
  authentication:       'plain',

}

【问题讨论】:

  • 你能试试这个解决方案吗:stackoverflow.com/a/1641372/2091457
  • 我可以,但问题是这个解决方案适用于过时版本的 rails,他们现在实现了 enable_starttls_auto 选项,所以如果没有其他解决方案,我会调查它,但我真的很喜欢不要使用这个解决方案!无论如何,谢谢

标签: ruby-on-rails


【解决方案1】:

我建议你删除数据库然后再创建、迁移数据库。在那之后,你现在可能会像我一样面临另一个挑战“Gmail:530 5.5.1 Authentication required. Learn more at”。如果没有,您的电子邮件将被成功发送。祝你好运!

【讨论】:

  • 由于问题是在一年多前创建的,我无法重新创建它并验证它是否有效,但感谢您的回答!
【解决方案2】:

如果允许安全性较低的应用在 google 配置中使用您的电子邮件呢?这是启用它的链接:

https://www.google.com/settings/security/lesssecureapps

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-02-04
    • 2016-04-07
    • 1970-01-01
    • 2015-04-24
    • 1970-01-01
    • 2011-07-13
    • 1970-01-01
    • 2012-10-05
    相关资源
    最近更新 更多