java 接受http报文
时间: 2023-09-09 21:10:22 浏览: 39
要受 HTTP 报文,可以使用 Java 中的 Socket 和 ServerSocket 类。以下是一个简单的示例代码,它启动一个服务器并等待客户端连接,然后接收客户端发送的 HTTP 请求报文:
```java
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
public class HttpServer {
public static void main(String[] args) throws Exception {
ServerSocket server = new ServerSocket(8080);
System.out.println("Server started on port 8080.");
while (true) {
Socket client = server.accept();
System.out.println("New client connected: " + client.getInetAddress());
BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));
String line;
while ((line = in.readLine()) != null) {
System.out.println(line);
if (line.isEmpty()) {
break;
}
}
client.close();
System.out.println("Client disconnected.");
}
}
}
```
这个示例代码创建了一个 ServerSocket 对象并绑定到本地的 8080 端口上。然后进入一个无限循环,等待客户端连接。当有新的客户端连接时,它输出客户端的 IP 地址,并从客户端的输入流中读取 HTTP 请求报文,直到读取到空行为止。最后关闭客户端连接,继续等待下一个客户端连接。