2012-02-21 5 views
0

В моем приложении C++ я хочу получить HTTP-сообщения типа GET/200OK, а затем проанализировать их в моей собственной структуре. Как я могу получить их с сетевой карты в течение времени выполнения?Как получить сетевое сообщение на уровне приложения?

+1

Это не ясно, все, что вы пытаетесь сделать. Вы пытаетесь написать веб-сервер? Вы пытаетесь контролировать существующий веб-сервер? Вы пытаетесь перехватить запросы от веб-клиента или браузера? Или что? –

+0

@ Давид отслеживает существующий веб-сервер и контролирует локальные http-сообщения, подобные проводу. – Kim

+0

Затем используйте Wireshark, [исходный код] (http://wiresharkdownloads.riverbed.com/wireshark/src/wireshark-1.6.5.tar.bz2) можно скачать. Измените его, если необходимо, чтобы он делал то, что вы хотите. (Вы также можете использовать [bpf] (http://en.wikipedia.org/wiki/Berkeley_Packet_Filter).) –

ответ

1

Вы можете использовать libucyrl, указанный in this answer.

Также вы можете написать свое собственное клиентское/клиентское приложение TCP и прочитать данные из сокетов, а затем проанализировать его так, как вы этого хотите. В этом случае лучше сначала ознакомиться с HTTP protocol.

Я думаю, что некоторые учебники могут быть полезны тоже, так вот несколько ссылок:

http://www.freeos.com/articles/4121/
http://www.jmarshall.com/easy/http/

Смежные вопросы