Форум: "Сети";
Текущий архив: 2007.02.04;
Скачать: [xml.tar.bz2];
ВнизWinSock и ProxyServer. Правильная форма HTTP запроса Найти похожие ветки
← →
DVM © (2006-08-25 16:48) [0]Без прокси сервера мой запрос выглядит так:
FRequest := "GET " + FPath + " HTTP/1.0"#13#10 +
"Host: " + FHost + #13#10 +
"Authorization: Basic " + EncodeBase64(FUserName + ":" + FPassword) + #13#10 +
"Content-type: application/x-www-form-urlencoded"#13#10#13#10;
Что изменить в запросе для работы через прокси?
← →
DVM © (2006-08-25 16:51) [1]Сам разобрался:
FRequest := "GET http://" + FHost + FPath + " HTTP/1.0"#13#10 +
"Host: " + FHost + #13#10 +
"Authorization: Basic " + EncodeBase64(FUserName + ":" + FPassword) + #13#10 +
"Content-type: application/x-www-form-urlencoded"#13#10#13#10;
← →
Орион © (2006-08-25 16:53) [2]еще бы Proxy-Connection: Keep-Alive.
Хотя... у тебя же http 1.0))
← →
DVM © (2006-08-30 12:02) [3]Попутно возник еще один вопрос. Насколько я знаю, доступ к прокси может быть ограничен логином/паролем.
Куда в http запрос вставить еще одну пару логин/пароль?
← →
Reindeer Moss Eater © (2006-08-30 12:13) [4]зависит от того, какой тип авторизации запросил прокси.
← →
DVM © (2006-08-30 12:15) [5]
> зависит от того, какой тип авторизации запросил прокси.
А какие бывают?
Я думаю запрос должен как-то так выглядеть
FRequest := "GET http://" + FHost + FPath + " HTTP/1.0"#13#10 +
"Host: " + FHost + #13#10 +
"Authorization: Basic " + EncodeBase64(FUserName + ":" + FPassword) + #13#10 +
"Proxy-Authorization: Basic " + EncodeBase64(FProxyUserName + ":" + FProxyPassword) + #13#10 +
"Proxy-Connection: Keep-Alive" + #13#10 +
"Content-type: application/x-www-form-urlencoded"#13#10#13#10;
← →
umbra © (2006-08-30 12:24) [6]Вообще, можно считать что прокси не требует авторизации и слать свой запрос. Если прокси ответит кодом 407, то авторизация нужна, и надо повторить запрос, добавив в него строку наподобие
"Proxy-Authorization: Basic " + EncodeBase64(FProxyUserName + ":" + FProxyPassword) + #13#10
Типы авторизации могут быть разными.
← →
Reindeer Moss Eater © (2006-08-30 12:30) [7]А какие бывают?
basic, digest, ntlm
← →
DVM © (2006-08-30 12:31) [8]
> Вообще, можно считать что прокси не требует авторизации
> и слать свой запрос. Если прокси ответит кодом 407, то авторизация
> нужна, и надо повторить запрос, добавив в него строку наподобие
Повторять запрос неудобно. Лучше слать сразу со строкой авторизации.
Прокси проигнорирует, если авторизация не требуется.
> Типы авторизации могут быть разными.
какими? Тот, что я привел это Basic HTTP авторизация. Какие еще есть?
← →
DVM © (2006-08-30 12:34) [9]
> Reindeer Moss Eater © (30.08.06 12:30) [7]
спасибо
← →
atruhin © (2006-08-30 14:19) [10]Только подумай нужен ли кому нибудь прокси поддерживающий только 1.0. Будут работать не все программы (ICQ например), более медленный доступ и т.д. Все это, учитывая, что в сети можно найти нормальный, бесплатный прокси на любой вкус
← →
DVM © (2006-08-30 14:40) [11]
> Только подумай нужен ли кому нибудь прокси поддерживающий
> только 1.0.
А с чего ты взял, что я делаю прокси-сервер??? Я пытаюсь в свою программу добавить поддержку прокси. Программа никак более с прокси не связана.
← →
atruhin © (2006-08-30 20:44) [12]> [11] DVM © (30.08.06 14:40)
Значит не внимательно посмотрел. Извени.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2007.02.04;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.046 c