java - 如何使用 java 和端口 143 发送 IMAP - 命令

标签 java tcp imap

我正在编写 imap 邮件检查器。 我有这样的东西:

tcpSocket = new Socket();
tcpSocket.connect(new InetSocketAddress(Config.HOST, 143));
...
// greeting message from server
String answer = socketBufferedReader.readLine();
// try to login
socketBufferedWriter.write("A001 login my_login password\n");
socketBufferedWriter.flush();
// get answer
answer = socketBufferedReader.readLine();

在最后一行代码中,程序被阻止。当超时结束时,我得到答案“*再见,自动注销空闲时间太长”。

我不明白出了什么问题。我想我使用了错误的命令格式,但我不确定

最佳答案

IMAP 绝对要求行结尾为\r\n,而不仅仅是\n。这适用于许多其他邮件协议(protocol)。

关于java - 如何使用 java 和端口 143 发送 IMAP - 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16840217/

相关文章:

java - 如何更改枚举值?

java - 如何处理对象未能满足java 8流中的过滤器

networking - 计算链接吞吐量的正确方法

c# - 从 C# 读取 gmail

java - 作为字节数组而不是字符串接收的 MQ 消息

java - 在java中从谷歌云存储读取/下载部分文件

linux - 禁用 TCP 延迟 ACK

sockets - 如何确定打开的套接字是 TCP 还是 unix 域套接字?

python - 如何使用 Python IMAP 从 Gmail 邮件中删除 "from nobody"和 "Content type"?

python - 用于 Python 的高级 IMAP 库