Rubyスクリプトを使用した電子メールの送信-501 5.5.4無効なアドレス
質問
Rubyスクリプトを使用してメールを送信しようとしていますが、概念実証が機能していません。メールサーバーにtelnetで接続してメールを送信できますが、このスクリプトによりメールサーバーでエラーが発生します: 501 5.5.4 Invalid Address
#!/usr/bin/ruby
require 'net/smtp'
def send_email(to, subject = "", body = "")
from = "my@email.com"
body= "From: #{from}\r\nTo: #{to}\r\nSubject: #{subject}\r\n\r\n#{body}\r\n"
Net::SMTP.start('192.168.10.213', 25, '192.168.0.218') do |smtp|
smtp.send_message body, from, to
end
end
send_email "my@email.com", "test", "blah blah blah"
実際のスクリプトでは、 my@email.com
は有効なメールです。 192.168.10.213
はメールサーバーで、 192.168.0.218
はローカルIPです。 Windows XPを実行していることに注意してください。メールサーバーはExchangeサーバーです。
telnetが同じ値で機能する理由がわかりませんが、このスクリプトでは無効なアドレスエラーが発生します。
誰か助けてくれますか?
編集:上記のコードは正常に動作するようになりました。最初の最後のメソッド呼び出しではコンマを省略しました。私はばかみたいです。
解決 3
信じられますか?私はばかみたいに感じます、メソッド呼び出しでコンマが抜けているだけです...
send_email" my@email.com"、" test"、" blah blah blah"
恥ずかしいです。
とにかく、誰かが興味を持っているなら、上記のコードは素晴らしい働きをします。私のようにカンマを省かないでください。
所属していません StackOverflow