【问题标题】:http header in a packets?数据包中的http标头?
【发布时间】:2010-02-13 10:29:59
【问题描述】:

如何在 C++ 中检索数据包中的 http 标头?

任何示例代码或教程都会有很大帮助!..

谢谢!..

注意:winpcap 用于数据包嗅探,这些数据包已被过滤为仅 tcp 和 http/s 协议。唯一的问题是如何解码数据包的 http 标头。

【问题讨论】:

标签: c++ http networking winpcap


【解决方案1】:

如果您已将标头读入缓冲区,则已使用 HTTP specification

如果您需要阅读标头,请查看 ASIOboost::asio(相同的库)以获得简洁的低级网络库。或者,考虑Qt,一个完整的 C++ 框架,支持低级和高级网络(以及更多)。您可以在那里使用 HTTP 客户端/服务器类。

或者,打开一个 socket() 并直接从中读取。哎哟。

【讨论】:

    【解决方案2】:

    C++ network library 可能就是您要找的。​​p>

    特别检查http::parser 及其parse_http_headers 成员函数。它将使用您的消息标题的内容填充http::message 类型的对象。

    该库仍在开发中,文档很少。因此,学习它的最好方法似乎是浏览源代码(不过不用担心,它的可读性很强)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-13
      • 1970-01-01
      • 2017-11-11
      • 2020-10-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多