解析HTTP将请求发送到组成字段

时间:2010-10-11 20:22:29

标签: java http parsing http-headers http-get

我有以下字段:

"GET /?blahblahblah HTTP/1.1" 200 43 "http://www.thesun.co.uk/sol/homepage/" 1 blahblah - "en-gb" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; GTB0.0; FunWebProducts; .NET CLR 1.1.4322; InfoPath.1; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)"

我正在寻找一个可以解码它的java库或代码,将它解析,并提供对组件的编程访问,尤其是用户代理信息。谷歌搜索没有任何有用的东西,但由于这些信息一直在使用,必须有现有的系统来做我需要的。

2 个答案:

答案 0 :(得分:3)

您可能想要使用Apache HttpCore。您正在寻找的界面HttpRequest和简单的实施是BasicHttpRequest

构建HttpRequest取决于您如何获得请求本身,但是例如,在我正在处理的一个小型Web服务器中,它只是:

DefaultHttpServerConnection serverConnection = new DefaultHttpServerConnection();
serverConnection.bind(socket, params);
HttpRequest httpRequest = serverConnection.receiveRequestHeader();

答案 1 :(得分:0)

您正在寻找的是一个apache LOG 解析器。您可能会发现JXLA有用,或谷歌搜索“Java apache日志解析器”。