![]() |
|
| Правила Форума редакция от 22.06.2020 |
|
|||||||
|
|
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже. |
|
![]() |
|
|
Опции темы | Опции просмотра |
Language
|
|
|
#1
|
|
Пользователь
Пол:
Регистрация: 17.09.2005
Сообщений: 64
Репутация: 8
|
Подскажите пожалуйста.
У меня курсовая работа написать простейший прокси сервер на C# Разбираю технологию работы с сокетами. Как подключаться к серверу с использованием сокетов я понял IPHostEntry lipa = Dns.Resolve("localhost"); IPEndPoint lep = new IPEndPoint(lipa.AddressList[0], 80); //Exception e; Socket s = new Socket(lep.Address.AddressFamily, SocketType.Stream, ProtocolType.Tcp); try{ s.Connect(lep); } catch { } Посылать запросы byte[] msg = Encoding.ASCII.GetBytes("This is a test"); int i = s.Send(msg, 0, msg.Length, SocketFlags.None); Принимать ответы byte[] bytes = new byte[1024]; s.Receive(bytes, 0, s.Available, SocketFlags.None); Но не могу понять, каким образом создать сервер к которому надо можно подключиться. Насколько я понимаю надо чтобы на другом компьютере сокет прослушивал нужный нам порт и принимал команду при получении данных на этот порт. Или это надо делать используя другой объект. Подскажите пожалуйста каким образом это сделать. Заранее спасибо за ответ. |
|
|
|
| Реклама: |
|
|
#2
|
|
Неактивный пользователь
Пол:
Регистрация: 04.08.2007
Сообщений: 38
Репутация: 52
|
Насколько я понимаю тебе нужно создать приложение клиент-сервер. На каком-нибудь компе располагается клиент, а на компе подключенном к и-нету серверная часть.
Клиентская часть посылает запросы на серверную. Напрмер если у тебя хттп прокси то клиентская часть - это диалог с кнопкой и текстбоксом для ввода URL, а далее просто этот URL передается серверной части серварная часть в ответ на это просто передает хтмл страницы на клиентскую часть. В клиентской части кроме кнопки и текстбокса можно сделать окно просмотра как в браузере, делается это не сложно. Полученный хтмл от серверной части, локально можно шде-то сохранять в кеш, а от туда путем чтения из памяти или жесткого диска отображать в наше окно "браузера". Для хттп прокси можно юзать классы: HttpWebRequest WebResponse Для фтп: FtpWebRequest WebResponse По сути у тебя получается серверная часть, это обычный загрузчик веб-страниц, а если для фтп, то достаточно для начала просто давать юзеру листинг фолдеров на фтп. |
|
|
|
|
|
#3
|
|
Неактивный пользователь
Регистрация: 16.01.2008
Сообщений: 4
Репутация: 0
|
Если желаешь, то я могу тебе сбросить образцы ниписаные на С++
|
|
|
|
|
|
#4
|
|
Неактивный пользователь
Регистрация: 25.01.2008
Сообщений: 6
Репутация: 0
|
если я правильно понял то читай msdn по TcpListener
|
|
|
|
|
|
#5
|
|
Неактивный пользователь
Пол:
Регистрация: 05.07.2007
Сообщений: 13
Репутация: 8
|
Читайте первоисточник
![]() пример асинхронного серверного сокета: http://msdn.microsoft.com/library/ru...ketexample.asp Пример асинхронного клиентского сокета: http://msdn.microsoft.com/library/ru...ketexample.asp Удачи. |
|
|
|
|
|
#6
|
|
Неактивный пользователь
Регистрация: 19.02.2009
Сообщений: 21
Репутация: 0
|
Пародон что вмешиваюсь... несколько лет рабоатл с сокетами, но сейчас есть прекрасный механизм WCF.. После его освоение сокеты кажутся кошмарным сном
![]() |
|
|
|
|
|
#7
|
|
Неактивный пользователь
Регистрация: 17.03.2008
Сообщений: 3
Репутация: 1
|
WCF интересно, сам собараюсь писать программу типа клиент сервер. как только узнаю подробней отпишусь тут .
|
|
|
|
|
|
#8
|
|
Неактивный пользователь
Регистрация: 27.04.2009
Сообщений: 5
Репутация: 1
|
|
|
|
|
|
|
#9
|
|
Неактивный пользователь
Пол:
Регистрация: 12.12.2008
Сообщений: 6
Репутация: 1
|
Если не хочеш заморачиваться с FtpWebRequest/WebResponse можеш посмотреть библеотеку BytesRoad.
Если нужно могу выложить |
|
|
|
|
|
#10
|
|
Неактивный пользователь
Регистрация: 01.10.2009
Сообщений: 10
Репутация: 1
|
|
|
|
|
![]() |
Похожие темы
|
||||
| Тема | Автор | Раздел | Ответов | Последнее сообщение |
| Работа с .CUE | Olegaaator | Просмотр, конверторы и монтаж Аудио&Видео | 11 | 08.01.2011 16:00 |
| Работа с PHP | Tipsan | PHP | 8 | 10.09.2008 02:56 |
| Работа с Bresque 3.0 | Kalush | UNIX, Linux, MacOs для PC и другие ОС | 1 | 25.09.2006 14:09 |
|
|