C ++ Запись / чтение из / в сокет с использованием Winsock - PullRequest
0 голосов
/ 03 декабря 2011

У меня Visual Studio Express на Windows 7, и я пытаюсь создать прокси-сервер TCP на C ++. У меня сейчас есть сервер, который работает, но, используя настройки прокси в Internet Explorer, он будет отправлять и получать только байты. Я не могу заставить его записывать данные на мой экран.

Я знаю, что это можно сделать с помощью read () write () в C, но я не думаю, что это работает для C ++ в Windows. Есть ли альтернатива?

Кроме того, кто-нибудь может дать мне руководство о том, как реализовать прокси-сервер? Я бы очень признателен за любую информацию, учебные пособия, предложения или что-нибудь полезное. Я довольно новичок в программировании сокетов, и в сети, похоже, нет ничего общего с прокси-серверами C ++.

В основном, попытайтесь преобразовать это в прокси-сервер: http://msdn.microsoft.com/en-us/library/ms737593(v=VS.85).aspx

Заранее спасибо!

1 Ответ

2 голосов
/ 03 декабря 2011

Прокси-сервер - это просто прослушивающий сервер, который принимает входящее клиентское соединение, устанавливает исходящее клиентское соединение с другим сервером, а затем передает данные назад и вперед между двумя соединениями.Вы уже видели пример сервера MSDN, теперь изучите его пример клиента .Как только вы это поймете, изучите RFC 2616 , в котором объясняется, как работает HTTP, и изучите Туннелирование веб-прокси , в котором объясняется, как работает команда HTTP CONNECT.Internet Explorer использует CONNECT при разговоре с прокси.

...