Java 通过Thunderbird\Outlook连接到本地主机POP3服务器
正在尝试连接到本地主机上我自己的POP3服务器(1024端口)。其代码:Java 通过Thunderbird\Outlook连接到本地主机POP3服务器,java,server,pop3,Java,Server,Pop3,正在尝试连接到本地主机上我自己的POP3服务器(1024端口)。其代码: server_socket = new ServerSocket(SBAP_PORT); Socket clntSocket = server_socket.accept(); public void run() { try { try { in = new BufferedReader( new InputStreamReade
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()发送给客户端的每个响应代码>,但它可能不是必需的。不使用out.print(“+OK\\r\\n”)或它都不起作用。服务器刚刚向我发送空字符串。我不知道,如果他想在实际接收命令之前从我这里发送一些东西……不,亲爱的,你应该把out.print(“+OK\\r\\n”)编码>到输出。打印(“+OK\r\n”)代码>,请再试一次@Xerocry