我已经编写了一个代码来通过java中的套接字发送HTTP请求。现在我想获得由我发送HTTP请求的服务器发送的HTTP响应。如何通过Java中的套接字获取HTTP响应?
0
A
回答
0
正如Jon所说,阅读HTTP规范。但是,互联网协议通常是面向行的,因此您可以一次读取响应。第一行将是回应。接下来是标题,每行一个(除非有延续)。如果有一个正文,其中一个标题将为内容类型,这会告诉你内容是什么。如果您想阅读内容,您需要了解内容可以发送的不同方式。可能有一个内容长度标题(或不是)或内容可能被分块(不能记住头顶的标题)。当然,内容可能是二进制文本而不是文本。
2
这并不完全清楚你要求什么。假设你写请求到插座,你会想要做的下一件事是:
- 呼叫
shutdownOutput()
在插座上,告诉该请求完成(不需要在服务器如果您发送内容长度) - 从套接字的输入流中读取响应,根据HTTP spec解析。
这是一堆的工作,所以我建议,而不是滚动您自己的HTTP请求的逻辑,使用的是内置的Java和包括用于检索响应的内容以及方法URLConnection由服务器设置的任何头文件。
0
yup! 没错!
响应应该被输入流明确地加入到 几个字节块...... 因此我们可以将它翻译成可读格式。 但是,这也需要更长的时间.... :(
相关问题
- 1. 如何通过套接字读取HTTP响应?
- 2. 从HTTP套接字响应中获取XML元素的值
- 3. HTTP套接字:响应头
- 4. 如何通过JSON获取http响应的嵌套数组的值
- 5. 如何过滤HTTP获取响应?
- 6. C#中的套接字:如何获取响应流?
- 7. 获取Java中HTTP响应的大小
- 8. 在java中通过http读取文件:HTTP响应代码414
- 9. 如何在JAVA程序中获取套接字的响应延迟?
- 10. 如何通过ECPublicKey通过java中的套接字
- 11. Java,如何从HTTP POST方法获取连接响应代码?
- 12. 使用HTTP协议通过TCP套接字获取图像
- 13. 只能通过套接字获取http状态码
- 14. Java,套接字连接和HTTP请求/响应
- 15. 如何通过JavaScript使用字符串获取http网站的响应?
- 16. 如何获取Java中的URL的HTTP响应代码?
- 17. 如何在node.js中获取http响应?
- 18. 如何接收http响应数据使用套接字?
- 19. 执行http 1套接字编程的JAVA pdf响应错误
- 20. 如何获取java http请求中的代理响应?
- 21. 获得通过套接字
- 22. 通过Java套接字的InterServer通信
- 23. 通过套接字的Java TCP通信
- 24. Http获取响应
- 25. 服务器响应通过Java中的套接字选定的客户端
- 26. 使用套接字的HTTP响应中的随机字符
- 27. 如何通过Http获取android中的数据和响应数据?
- 28. 下载HTTP通过套接字(C)
- 29. 通过Java套接字的HTTPS GET/HTTP/1.1请求
- 30. 如何在iOS中使用套接字连接从服务器获取响应?
+1为“不要自己做这个。”(你不需要关闭输出,如果你已经发送了一个内容的长度当然。 )还有其他的库可用。具有讽刺意味的是,OP在昨天询问了他们,所以我不确定他们为什么直接将请求写入套接字... –
当然,我自己在C++中完成了一次这绝对不是乐趣,不是火箭科学,但也不好玩。 –