如何在Java中解析HTTP请求?

在实现代理服务器时,我收到一个字符串形式的HTTP请求,例如:

获取 http://localhost:54321/x HTTP/1.1

主机: 本地主机:54321

缓存控制:无缓存

是否有用于解析此请求的内置类?


答案 1

我对这种解析的内置支持一无所知。如果你真的需要这样的解析器,你可以看看这个库:http://hc.apache.org/index.html

下面是详细示例:http://www.mail-archive.com/httpclient-user@jakarta.apache.org/msg04070.html


答案 2

如果“内置”意味着JDK,我很确定没有类可以让你竞标。

正如Lukas所说,HttpComponents可能会有所帮助。即使没有类可以完全执行所需的操作,也有代码可用于查看它们如何执行该操作。

不过,自己实现这一点并不难。一些字符串拆分将解决问题。


推荐