2012-11-19 44 views
0

我有一个服务器接受发布请求。该帖子是从Apache库发送的。如何处理http POST主体

BufferedReader input = new BufferedReader(new InputStreamReader(socket.getInputStream())); 
"some code here handles status line" 
While (input.ready) { 
    line = input.readLine() 
    if (line.length() == 0) 
    break; 
    System.out.println(line); 
} 

问题是我从来没有真正得到身体?我只有头部?

感谢您的帮助

回答

1
  1. 读头与input.readLine();
  2. 跳过2空行"\r\n\r\n"
  3. 读的身体,而line.length()!= 0

所以格式可能如下所示:

Header1\r\n 
Header2\r\n 
Header3\r\n\r\n 
BODY 
BODY 
BODY... 

另一种选择是使用com.sun.net.httpserver.HttpServer

+0

即使我这样做 虽然(真){ 线= input.readLine() 的System.out.println(线);} 我只拿到了头 – user1724416