Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/25: Рейтинг темы: голосов - 25, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 19.07.2013
Сообщений: 126

Работа с socks5

15.03.2018, 16:35. Показов 5347. Ответов 8

Студворк — интернет-сервис помощи студентам
Добрый день. Есть программка, работает на http проксях, но тут появилась надобность ее сделать еще и на socks5, но так как я использую HttpWebRequest, то socks5 в нем не работает...Мне посоветовали использовать xNet библиотеку, но я не могу понять как в ней получить ответ сервера только заголовком, у HttpWebRequest использую так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
           HttpWebRequest request = (HttpWebRequest)WebRequest.Create("сайт");
           request.Proxy = new WebProxy(proxy.Trim());
            request.Method = "POST";
            request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.167 Safari/537.36";
            request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8";
            request.ContentType = "application/x-www-form-urlencoded";
            request.Headers["Accept-Encoding"] = "gzip, deflate, br";
            request.Headers["Accept-Language"] = "ru-RU,ru;q=0.9,en-US;q=0.8,en;q=0.7,en-GB;q=0.6,en-AU;q=0.5";
            request.Headers["Cookie"] = "куки";
            request.AllowAutoRedirect = false;
            ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls11;
          
                var param = "параметры";
                byte[] sentData = Encoding.UTF8.GetBytes(param);
                request.ContentLength = sentData.Length;
                Stream sendStream = request.GetRequestStream();
                sendStream.Write(sentData, 0, sentData.Length);
                sendStream.Close();
                WebResponse res = request.GetResponse();
                Stream ReceiveStream = res.GetResponseStream();
                StreamReader sr = new StreamReader(ReceiveStream, Encoding.UTF8);
                Char[] read = new Char[256];
                int count = sr.Read(read, 0, 256);
                string Out = String.Empty;
                while (count > 0)
                {
                    String str = new String(read, 0, count);
                    Out += str;
                    count = sr.Read(read, 0, 256);
                }
 
            if (Out.Length > 500)
            {
                MessageBox.Show("Не удачно");
            }
            else if (Out.Length < 200)
            {
                MessageBox.Show("Удачно");
            }
Подскажите что можно использовать чтобы работать через socks5 и обязательно получать ответ заголовком, а не целиком страницы, так как в странице очень много когда и парсить его долгое дело.

Добавлено через 23 часа 49 минут
По прежнему ищу помощи)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.03.2018, 16:35
Ответы с готовыми решениями:

Socks5 Server
Здраствуйте! Необходима для личных целей написать Socks5 Server с авторизацией. Помогите, с чего начать, што использовать, может...

Поднять socks5
Всем привет! Озадачился такой проблемой: нужно поднять socks5, но чтоб IP входящий был бы и исходящим. К примеру, если поднимать просто...

Socks5 udp клиент
Нужен пример кода socks5 клиента отправляющего и принимающего UDP пакеты. И что значит Ассоциирование UDP-порта? Для udp соединения через...

8
0 / 0 / 0
Регистрация: 19.07.2013
Сообщений: 126
16.03.2018, 17:28  [ТС]
Апс
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18262 / 14187 / 5366
Регистрация: 17.03.2014
Сообщений: 28,872
Записей в блоге: 1
16.03.2018, 19:12
Цитата Сообщение от LifeMen Посмотреть сообщение
обязательно получать ответ заголовком
Что ты понимаешь под этим? Приведенный код читает весь текст ответа. Потенциально неправильно к тому же.
0
0 / 0 / 0
Регистрация: 19.07.2013
Сообщений: 126
16.03.2018, 19:17  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Сообщение от LifeMen
обязательно получать ответ заголовком
Что ты понимаешь под этим?
на примере гугла:
HTTP/1.1 302 Found
Cache-Control: private
Content-Type: text/html; charset=UTF-8
Referrer-Policy: no-referrer
Location: http://www.google.ru/?gfe_rd=c... 6ASqtaTYDA
Content-Length: 268
Date: Fri, 16 Mar 2018 16:15:04 GMT

Вот такой заголовок) только его получать, а не весь код страницы. На xNet не нашел как получить такой заголовок...

Цитата Сообщение от OwenGlendower Посмотреть сообщение
Приведенный код читает весь текст ответа. Потенциально неправильно к тому же.
Подскажи плз на примере приведенного кода где исправить чтобы не читать весь текст ответа.Заранее Спасибо)
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18262 / 14187 / 5366
Регистрация: 17.03.2014
Сообщений: 28,872
Записей в блоге: 1
16.03.2018, 19:33
Цитата Сообщение от LifeMen Посмотреть сообщение
Подскажи плз на примере приведенного кода где исправить чтобы не читать весь текст ответа
Заменяем строки с 19 по 39 на
C#
1
2
3
4
5
string headers;
using (WebResponse res = request.GetResponse())
{
    headers = res.Headers.ToString();
}
Цитата Сообщение от LifeMen Посмотреть сообщение
На xNet не нашел как получить такой заголовок...
Попробуй использовать метод EnumerateHeaders() у класса HttpResponse
0
0 / 0 / 0
Регистрация: 19.07.2013
Сообщений: 126
18.03.2018, 21:50  [ТС]
OwenGlendower, Спасибо, попробую.
0
0 / 0 / 0
Регистрация: 19.07.2013
Сообщений: 126
20.03.2018, 12:29  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
Попробуй использовать метод EnumerateHeaders() у класса HttpResponse
Можете подсказать как использовать EnumerateHeaders() ? Не могу найти описание по этому методу
0
Администратор
Эксперт .NET
 Аватар для OwenGlendower
18262 / 14187 / 5366
Регистрация: 17.03.2014
Сообщений: 28,872
Записей в блоге: 1
20.03.2018, 14:51
LifeMen, без описания никак? Так трудно открыть исходники и посмотреть как устроен метод? Там в частности видно что он возвращает IEnumerator для Dictionary<string,string> из чего следует что перебор можно сделать так:
C#
1
2
3
4
5
6
7
var enumerator = (IEnumerator<KeyValuePair<string,string>>)response.EnumerateHeaders();
while (enumerator.MoveNext())
{
    string header = enumerator.Current.Key;
    string value = enumerator.Current.Value;
    ...
}
1
0 / 0 / 0
Регистрация: 19.07.2013
Сообщений: 126
20.03.2018, 15:00  [ТС]
Цитата Сообщение от OwenGlendower Посмотреть сообщение
LifeMen, без описания никак? Так трудно открыть исходники и посмотреть как устроен метод?
Нет, не трудно) Не подумал про исходник... Спасибо)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
20.03.2018, 15:00
Помогаю со студенческими работами здесь

Awesomium и socks5 с авторизацией
Здравствуйте. Появилась острая необходимость использовать awesomium в паре с проксями socks5 с авторизацией. Все стандартные ответы из...

Глючит socks5-сервер
Дано: некая прога, коя требует socks5-подключение для переброски своего траффика. Прога буржуйская, у них там сокс-серваки дешевые (можно...

Не работает socks5 прокси
Здравствуйте.Нашел на &quot;ХАКЕР&quot; статью &quot;Socks5 своими руками&quot; , решил проверить работает-нет... Скомпилировал запустил.Вроде все...

Socks5 прокси сервер
Скажите пожалуйста, есть ли у кого-нибудь реально рабочие исходники Socks5 прокси сервера. Очень нужны.

Indy Socks4\Socks5
Не могу найти рабочий способ работы через соксы на инди, пытаюсь сделать так: IdSocksInfo1.Create(NIL); ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru