- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:sendmailのレスポンスコードを取りたいのですが・・・)
perlでメール送信時のレスポンスコードはどうやったら取得できますか?
このQ&Aのポイント
- perlでメール送信時のレスポンスコードを取得する方法を教えてください。
- Net::SMTPを使ってメール配信を行った場合、レスポンスコードを取得する方法がわかりません。
- PHPのgetResponse()メソッドが使えない場合、perlではどのようにレスポンスコードを取得すればよいのでしょうか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
Net::Cmd の code() で取得できます。 #!/usr/bin/perl use strict; use warnings; use Net::SMTP; my $smtp = Net::SMTP->new('mail.example.com') or die; eval { $smtp->mail('foo@example.com') or die; $smtp->to('bar@example.com') or die; $smtp->data() or die; $smtp->datasend("To: bar\@example.com\n") or die; $smtp->datasend("\n") or die; $smtp->datasend("A simple test message\n") or die; $smtp->dataend() or die; $smtp->quit or die; }; if ( $@ ) { my $code = $smtp->code(); my $message = $smtp->message(); chomp($message); print "ERROR: $code $message:\n"; } exit;
お礼
ありがとうございます! 取り合えず存在しないメールアドレスに送ってみたところ ERROR: 553 5.3.0 <xxx@xxxxx.xxx>... Recipient is not local (2): と取得できました! いろいろ試してみようと思います。 本当に助かりました!ありがとうございます