Winsock + Proxy

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Dromok
Начинающий
Начинающий
 
Сообщения: 24
Зарегистрирован: 27.02.2006 (Пн) 22:26

Winsock + Proxy

Сообщение Dromok » 28.02.2006 (Вт) 10:41

Я прошу извинения у модераторов за повтор темы. Но предыдущую мою тему сразу закрыли не поняв смысла вопроса.
Итак, суть вопроса такова: Необходимо получить ответ от proxy-сервера.
Пишем код:
Код: Выделить всё

Private Sub Form_Load()
    Winsock1.Protocol = sckTCPProtocol 'выбираем протокол
    Winsock1.Connect "localhost", 3129  'конектимся к локальному прокси   
   
    While Not Winsock1.State = 7 'ждем подключения
        DoEvents
    Wend

    'шлем запрос на прокси ТАКОЙ ЗАПРОС ШЛЕТ ЭКСПЛОРЕР! ТАК ЧТО НЕ КИДАЙТЕСЬ СРАЗУ ГНИЛЫМИ ПОМИДОРАМИ!
    Winsock1.SendData "GET http://ya.ru/ HTTP/1.1" & vbCrLf
    Winsock1.SendData "Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*" & vbCrLf
    Winsock1.SendData "Accept-Language: ru" & vbCrLf
    Winsock1.SendData "Accept-Encoding: gzip , deflate" & vbCrLf
    Winsock1.SendData "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)" & vbCrLf
    Winsock1.SendData "Host: ya.ru" & vbCrLf
    Winsock1.SendData "Proxy-Connection: Keep-Alive" & vbCrLf

End Sub

Я в курсе как принимать ответ через DataArrival. И тем более знаю как накапливать пришедшие ответы в буфере. И я прочитал фак по формированию GET.
Суть не в этом. Если подключаться напрямую к серверу в обход прокси сервера "Winsock1.Connect "ya.ru", 80", то ответ приходит отлично. Но если пытаться подрубиться к прокси, то ответа от прокси не приходит, более того ПРОКСИ В ЛОГЕ НЕ ПОКАЗЫВАЕТ ЧТО К НЕМУ ПОДКЛЮЧАЛИСЬ. Я пробовал подключаться к разным проксям. Везде одно и тоже.
В чем проблема? Кто-нибудь работал с прокси серверами?

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 28.02.2006 (Вт) 10:47

Нет.
Ты не прочитал FAQ по формированию GET.
Любой, кто прочитал FAQ по формированию GET, знает, что GET заканчивается двумя CRLF, а не одним.
Именно поэтому совет читать FAQ и закрытие темы считаю адекватными.
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Dromok
Начинающий
Начинающий
 
Сообщения: 24
Зарегистрирован: 27.02.2006 (Пн) 22:26

Сообщение Dromok » 28.02.2006 (Вт) 11:17

GSerg спасибо огромное! Я третий день ломаю голову почему ответ не приходит от прокси... А на такую мелочь и внимание не обратил... Сейчас всё заработало! Еще раз спасибо!


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: Google-бот и гости: 48

    TopList