如何使用STARTTLS连接到Office365 SMTP?我一直收到“先发送你好”的错误

时间:2016-02-03 22:21:15

标签: android smtp office365 apache-commons-net

我正在尝试使用STARTTLS连接到Office365 SMTP服务器(在smtp.office365.com端口587上)。当我发送AUTH PLAIN时,它会显示503 5.5.2 Send hello first。我做错了什么?

这是我与服务器的对话: 02-03 02:58:56.951: I/System.out(1547): 220 MEXPR01CA0064.outlook.office365.com Microsoft ESMTP MAIL Service ready at Wed, 3 Feb 2016 07:58:55 +0000 02-03 02:58:59.781: I/System.out(1547): EHLO codolutions.com 02-03 02:59:12.841: I/System.out(1547): 250-MEXPR01CA0064.outlook.office365.com Hello [49.180.156.25] 02-03 02:59:12.841: I/System.out(1547): 250-SIZE 157286400 02-03 02:59:12.841: I/System.out(1547): 250-PIPELINING 02-03 02:59:12.841: I/System.out(1547): 250-DSN 02-03 02:59:12.841: I/System.out(1547): 250-ENHANCEDSTATUSCODES 02-03 02:59:12.841: I/System.out(1547): 250-STARTTLS 02-03 02:59:12.851: I/System.out(1547): 250-8BITMIME 02-03 02:59:12.851: I/System.out(1547): 250-BINARYMIME 02-03 02:59:12.851: I/System.out(1547): 250 CHUNKING 02-03 02:59:14.591: I/System.out(1547): STARTTLS 02-03 02:59:14.661: I/System.out(1547): 220 2.0.0 SMTP server ready 02-03 02:59:21.421: I/System.out(1547): AUTH PLAIN 02-03 02:59:26.491: I/System.out(1547): 503 5.5.2 Send hello first

我也试过在EHLO之前发送STARTTLS,也尝试发送HELO而不是运气。

P.S。我在Android中使用Apache Commons Net。

1 个答案:

答案 0 :(得分:0)

找到答案: 我必须在STARTTLS(#WTF)之后发送另一个HELO / EHLO。