Chinaunix

标题: [已解决]Net::SMTP模块的auth()方法 [打印本页]

作者: lovepl    时间: 2006-11-02 14:00
标题: [已解决]Net::SMTP模块的auth()方法
由于工作需要,需要用Net::SMTP模块来发邮件
但在发送过程中,由于使用的SMTP需要身份验证,所以用到了auth()方法
经过N次尝试,均失败
找了一个不需要验证的SMTP并去掉了auth后再试,结果成功
不知道程序有什么问题,请用过auth方法的帮忙看下,代码如下(改了一些涉及个人信息的部分)

  1.     use Net::SMTP;

  2.     $smtp = Net::SMTP->new('mail.test.com',Timeout=>60,Debug=>1);
  3.     $smtp->auth('usr','passwd');

  4.     $smtp->mail('ttt@test.com');
  5.     $smtp->to('bbb@test.com');

  6.     $smtp->data();
  7.     $smtp->datasend("To:somebody");
  8.     $smtp->datasend("\n");
  9.     $smtp->datasend("Subject: test\n");
  10.     $smtp->datasend("A simple test message\n");
  11.     $smtp->dataend();

  12.     $smtp->quit;
复制代码

[ 本帖最后由 lovepl 于 2006-11-2 14:39 编辑 ]
作者: flw    时间: 2006-11-02 14:28
你检查一下 auth 的返回值,并且打印一下错误信息。
Net::SMTP 的认证需要其它模块的支持。
作者: lovepl    时间: 2006-11-02 14:38
谢谢flw
我查了一下,果然需要其他模块
要装Net::SMTP_auth




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2