我正在尝试使用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。
答案 0 :(得分:0)
找到答案: 我必须在STARTTLS(#WTF)之后发送另一个HELO / EHLO。