请教如何从TCP包中解析判断是否含有HTTP包?

chosen86 2016-08-26 03:08:04
求问,怎么从TCP包中判断是否含有HTTP包?小白求java代码。。。多谢
...全文
526 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
HerveyHall 2016-08-29
  • 打赏
  • 举报
回复
引用 6 楼 chosen86 的回复:
多问一句,用正则匹配还是其他方法好? 小白。。。。
目测正则好些,不过写一个严谨的正则式对于层主来说并不容易,只能帮到这了
chosen86 2016-08-29
  • 打赏
  • 举报
回复
引用 5 楼 hhv_01 的回复:
引用 4 楼 chosen86 的回复:
明白了,多谢!
可以结帖了
多问一句,用正则匹配还是其他方法好? 小白。。。。
HerveyHall 2016-08-29
  • 打赏
  • 举报
回复
引用 4 楼 chosen86 的回复:
明白了,多谢!
可以结帖了
chosen86 2016-08-29
  • 打赏
  • 举报
回复
引用 3 楼 hhv_01 的回复:
引用 2 楼 chosen86 的回复:
只判断有没有“HTTP”这个字符串会误判吗?
会的,楼主可能没明白我的意思,下面我举一个HTTP报文的例子:

GET / HTTP/1.0
Host: www.herveyhall.cf
这便是一个HTTP请求,因为不需要报文内容,只需要把这个报文通过socket发送到www.herveyhall.cf这个服务器就可以得到服务器的响应报文,响应报文的内容便是网页的源代码。 事实上,只需要发送第一行,服务器就会返回一个响应报文。 所以按照lz的题目,要判断的主要是报文第一行的完整格式而不是“HTTP”这个字符串[/quote]好的,明白了,多谢!
HerveyHall 2016-08-28
  • 打赏
  • 举报
回复
引用 2 楼 chosen86 的回复:
只判断有没有“HTTP”这个字符串会误判吗?[/quote] 会的,楼主可能没明白我的意思,下面我举一个HTTP报文的例子:

GET / HTTP/1.0
Host: www.herveyhall.cf
这便是一个HTTP请求,因为不需要报文内容,只需要把这个报文通过socket发送到www.herveyhall.cf这个服务器就可以得到服务器的响应报文,响应报文的内容便是网页的源代码。 事实上,只需要发送第一行,服务器就会返回一个响应报文。 所以按照lz的题目,要判断的主要是报文第一行的完整格式而不是“HTTP”这个字符串
chosen86 2016-08-26
  • 打赏
  • 举报
回复
引用 1 楼 hhv_01 的回复:
判断读取到的行是否符合HTTP报文格式:
<HTTP请求方法> <请求的URL> <HTTP协议版本>
<报文头字段名称>: <字段值>
...
<空一行>
<报文内容>
只判断有没有“HTTP”这个字符串会误判吗?
HerveyHall 2016-08-26
  • 打赏
  • 举报
回复
判断读取到的行是否符合HTTP报文格式:
<HTTP请求方法> <请求的URL> <HTTP协议版本>
<报文头字段名称>: <字段值>
...
<空一行>
<报文内容>

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧