用Java实现一个简单的HTTP服务器
在Java中,我们可以使用内置的HttpServer类来创建一个简单的HTTP服务器。以下是一个基本的例子:
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
public class SimpleHttpServer {
private static final int PORT = 8000; // Change this to any available port
public static void main(String[] args) {
try (ServerSocket serverSocket = new ServerSocket(PORT)) {
System.out.println("HTTP server started on port " + PORT);
while (true) {
Socket clientSocket = serverSocket.accept();
System.out.println("New connection accepted from " + clientSocket.getRemoteSocketAddress()));
// Handle client requests here. For simplicity, we'll just echo the request back.
String request = "GET / HTTP/1.1\r\nHost: localhost\r\n\r\n";
try (Socket clientOutputSocket = clientSocket.getOutputStream();
PrintWriter writer = new PrintWriter(clientOutputSocket, true)))) {
writer.print(request);
} catch (IOException e) {
System.out.println("Error handling client request: " + e.getMessage());
}
}
} catch (IOException e) {
System.err.println("Error starting HTTP server: " + e.getMessage());
e.printStackTrace();
}
}
}
这个程序会在指定的端口(例如8000)上启动一个HTTP服务器,它会接收到客户端的GET请求,并将原请求回显给客户端。
还没有评论,来说两句吧...