我在尝试使用action_mailer_tls插件在我的Rails应用中与Gmail通信时遇到错误:
Must issue a STARTTLS command first
Run Code Online (Sandbox Code Playgroud)
其他人似乎遇到了同样的问题:
问题是Gmail需要TLS身份验证,但标准的Ruby net/smtp库不支持TLS.
本文建议按照以下步骤操作:
当然,Marc Chung创建了一个有用的插件来克服这个障碍.您可以在此处找到它并手动将其添加到项目中,也可以将其导出到插件目录中.
$ cd vendor/plugins$ svn export http://code.openrain.com/rails/action_mailer_tls/无论哪种方式,请确保您需要'smtp_tls'
现在你需要的是更新你的smtp_settings,如果你还没有这样做的话.
- ActionMailer :: Base.smtp_settings = {
- :address =>"smtp.gmail.com",
- :port => 587,
- :domain =>"domain.com",
- :user_name =>"user@domain.com",
- :password =>"密码",
- :authentication =>:plain
- }
任何有关与Gmail交谈的更好解决方案的建议都将受到赞赏.