关于 503 5.5.2 Send hello first!的问题!

wangjianbo1123 2010-07-27 12:39:13
最近用c++ 写了个发送邮件的程序,在测试中,遇到点问题,如果我把邮件服务器设置成163的,接收者用公司的邮箱,可以收到邮件,但是如果我把邮件服务器设置成自己公司的,在

msg = "AUTH LOGIN\r\n";
sendRequest(send_auth_cmd, msg);
rcvResponse("334");

的时候,从服务器收到的提示信息是503 5.5.2 Send hello first!但是在之前我已经向服务器发送了
msg = "HELO ";
msg += std::string(local_host) + "\r\n";
sendRequest(send_helo_cmd, msg);
rcvResponse("250"); 并且成功返回,为什么还会提示503 5.5.2 Send hello first!这个消息呢?

不知道有没有人知道问题出在哪里,谢谢了
...全文
1151 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhaoyuan0804 2012-10-10
  • 打赏
  • 举报
回复
我也遇到了这个问题,刚刚解决掉。解决办法:
HELO命令是普通SMTP协议的指令,而EHLO是扩展的SMTP协议的指令,需要身份验证的。公司邮箱鉴于保密性一般会选用后者,所以在发送第一个命令时应该用EHLO,而不是HELO。
试一下吧,我就是这样解决的。
zhangyin_win1 2011-09-14
  • 打赏
  • 举报
回复
楼主解决这个问题没啊?
ayw215 2010-07-27
  • 打赏
  • 举报
回复
msg = "HELO ";
wangjianbo1123 2010-07-27
  • 打赏
  • 举报
回复
我想问题也应该出在公司的邮件服务器上面,估计是认证通不过,不晓得有没有人也遇到类似的情况 顶起
Csuxiaowu 2010-07-27
  • 打赏
  • 举报
回复
你telnet一下自己公司邮件服务器
看看是什么效果 估计是你们自己服务器的问题吧
或者你用抓包软件看看是否是“250”——————》“334”这样的顺序

65,203

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧