0

所以我正在测试 Ruby gem 'Mail'。下面是我的代码。根据系统管理员的说法,通过 SMTP 发送不需要身份验证,并且允许服务器通过 SMTP 发送。如果这是有道理的。

我用过'net/smtp'效果很好,但我似乎无法让这个'Mail'宝石为我工作。它没有给我任何错误,所以我不确定问题是什么。我是一个完整的红宝石菜鸟。

#testing out mailer
require 'mail'
Mail.defaults do
    delivery_method :smtp,  {
    :address => '10.18.34.18',
    :port => '25',
    :user_name => 'anonymous',
    :password => 'anonymous',
    :authentication => 'plain',
    :enable_starttls_auto => true}
end

mail = Mail.new do
    from 'server@company.com'
    to 'cvu@company.com'
    subject 'This is a test email'
    body File.read('test.txt')
end

mail.to_s
4

2 回答 2

1

尝试调用mail.deliver!,调用to_s只是返回对象的字符串表示形式。

或者,您可以deliver使用块调用而不是调用new,例如

mail = Mail.deliver do
    from 'server@company.com'
    to 'cvu@company.com'
    subject 'This is a test email'
    body File.read('test.txt')
end
于 2013-10-28T19:34:35.740 回答
0

除了 struthersneil 所说的之外,我还必须像这样删除身份验证:

require 'mail'
Mail.defaults do
    delivery_method :smtp,  {
    :address => '10.18.34.18',
    :port => '25',
    :enable_starttls_auto => true}
end
于 2013-10-28T20:59:18.080 回答