我实际上刚刚开始工作。写了一个快速脚本来测试它。
我收到的错误与您不同(需要 STARTTLS),我还发现我必须使用端口 587 而不是 465。
我找到了让它在我发现的 Rails 插件中工作的技巧。(agilewebdevelopment.com/plugins/net_smtp_tls_support)
如果你“评估”这个文件(它增加了对标准 Net::SMTP 库的 tls 支持):
http://happiness-is-slavery.net/wp-content/rails-plugins/smtp_add_tls_support/lib/smtp_add_tls_support.rb
然后运行'Net::SMTP.enable_tls()'
一切似乎都很好。
这是我的代码:
require 'rubygems'
require 'net/smtp'
eval File.read("smtp_tls.rb")
Net::SMTP.enable_tls()
FROM_EMAIL = "REMOVED"
PASSWORD = "REMOVED"
TO_EMAIL = "REMOVED"
msgstr = <<END_OF_MESSAGE
From: Your Name <#{FROM_EMAIL}>
To: my phone <#{TO_EMAIL}>
Subject: text message
Date: Sat, 23 Jun 2001 16:26:43 +0900
Message-Id: <unique.message.id.string@example.com>
This is a test message.
END_OF_MESSAGE
Net::SMTP.start('smtp.gmail.com', 587, 'gmail.com',
FROM_EMAIL, PASSWORD, :plain) do |smtp|
smtp.send_message msgstr, FROM_EMAIL, TO_EMAIL
end
显然,我将上述文件下载到同一目录并将其命名为“smtp_tls.rb”
希望这可以帮助!