通过 Thunderbird\Outlook 连接到本地 POP3 服务器

Connect to localhost POP3 server through Thunderbird\Outlook

正在尝试连接到本地主机(1024 端口)上我自己的 POP3 服务器。它的代码:

 server_socket = new ServerSocket(SBAP_PORT);
 Socket clntSocket = server_socket.accept();
 public void run() {
    try {
        try {
            in = new BufferedReader(
                    new InputStreamReader(socket.getInputStream()
                    ));
            out = new PrintWriter(socket.getOutputStream(), true);
            out.print("+OK\r\n");
            command = in.readLine();
            String result = handleInput(command);
            out.println(result);
        } finally {
            socket.close();
            state.close();
            System.out.println("client offline.");
        }
    } catch (Exception ignored) {
    }
}

它在 telnet 上运行良好,但是当我尝试在 Thunderbird 上运行时,只是超时(无法找到您的电子邮件帐户的设置)。

在调试中我看到,我在连接时得到了空字符串。

我做错了什么?也许我应该在连接后立即向客户发送一些东西?

我认为它必须是 \r\n 而不是 \r\n,并且尝试刷新您通过 out.flush(); 发送给客户端的每个响应,但这可能没有必要。