现在有要求如下
websocket 连接/smtp 端点,模拟 SMTP 协议发送邮件,发件地址: test@mine.com ,收件地址 test@nullht.com ,邮件内容 Hello World 。请注意:大小写敏感,websocket 连接仅保留 1 分钟左右,断了需要重连并重头发送 SMTP 命令
可以确定发送的地址是 wss://interview-test.nullht.com/smtp
我按照他的要求,写出了下面的代码,其他的不重要,我们直接看我发送请求的格式
private void initializeCommands() {
commandQueue.clear();
commandQueue.add("EHLO mine.com\r\n");
commandQueue.add("MAIL FROM:<test@mine.com>\r\n");
commandQueue.add("RCPT TO:<test@nullht.com>\r\n");
commandQueue.add("DATA\r\n");
// 注意:邮件内容需要包含完整格式
commandQueue.add(
"From: test@mine.com\r\n" +
"To: test@nullht.com\r\n" +
"Subject: Hello\r\n" +
"\r\n" + // 空行分隔头部和正文
"Hello World\r\n" +
".\r\n" // 结束符
);
commandQueue.add("QUIT\r\n");
}
这个代码可以得到下面的响应:
Sending command: EHLO mine.com
Server response: 220 邮件服务器准备就绪
Server response: 250 很高兴认识你
Sending command: MAIL FROM:<test@mine.com>
Server response: 250 发件人已接受
Sending command: RCPT TO:<test@nullht.com>
Server response: 250 收件人已接受
Sending command: DATA
Server response: 500 命令不被识别
显然是 DATA 后的内容有问题,其他的都没毛病。但是我参照下面的教程
https://blog.csdn.net/weixin_39833509/article/details/88965720
感觉这个格式也没问题啊,我试了好久了都没搞出来到底哪里有问题,什么 AI 、谷歌全试过了,有没有大佬救一下,小弟我是真不行了,我先谢谢各位了
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.