ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

HTTP 1.1,вопрос
  #1  
Старый 05.03.2010, 19:51
_nic
Постоянный
Регистрация: 05.05.2006
Сообщений: 743
Провел на форуме:
2982851

Репутация: 107


По умолчанию HTTP 1.1,вопрос

1.1 в отличии от 1.0 незакрывает сокет после ответа на запрос.Так как тогда в 1.1 отловить момент когда нужно прекращать прием данных?
 
Ответить с цитированием

  #2  
Старый 05.03.2010, 21:22
slesh
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

2 _nic ну там много различий. Тут всё делов в двух вещах:
поле Connect каторое ты передаешь. Там ты можешь сказать Keep-alive или close
Первое типа остаться на линии, а второе - типа чтобы сервак закрыл соединение после отправки данных.
Вторая фишка - сервак отвечает и в его ответе почти всегда есть Content-Length в котором написано сколько данных он должен передать тебе. Вот и считывай это кол-во )
 
Ответить с цитированием

  #3  
Старый 05.03.2010, 22:15
dvion
Новичок
Регистрация: 11.03.2009
Сообщений: 19
Провел на форуме:
148278

Репутация: 3
По умолчанию

Если в отдельных случаях с блоками осиливать вручную лень - лучше юзать 1.0. В реальных условиях keep-alive редко, когда может пригодиться.
 
Ответить с цитированием

  #4  
Старый 06.03.2010, 00:29
slesh
Reservists Of Antichat - Level 6
Регистрация: 05.03.2007
Сообщений: 1,985
Провел на форуме:
3288241

Репутация: 3349


Отправить сообщение для slesh с помощью ICQ
По умолчанию

keep-alive юзается когда в один контекст посылаются несколько последовательных запросов. Такое любят делать с проксями браузеры типа FF.
 
Ответить с цитированием

  #5  
Старый 06.03.2010, 00:41
Chrome~
Постоянный
Регистрация: 13.12.2008
Сообщений: 354
Провел на форуме:
1747641

Репутация: 175
Отправить сообщение для Chrome~ с помощью ICQ
По умолчанию

slesh, что тогда означает поле Keep-Alive: 300, и почему в большинстве случаев именно 300, а не какое-нибудь другое значение?
 
Ответить с цитированием

  #6  
Старый 06.03.2010, 00:45
wildshaman
Постоянный
Регистрация: 16.04.2008
Сообщений: 889
Провел на форуме:
12942062

Репутация: 1550


Отправить сообщение для wildshaman с помощью ICQ
По умолчанию

Keep-Alive. Заголовок Keep-Alive содержит значение, которое означает в течение какого времени в секундах будет удерживаться соединение. Этот заголовок следует отправлять только в том случае, если заголовок Connection содержит значение keep-alive.
Поддерживается только для протокола HTTP версии 1.1.

В нашем примере этот заголовок содержит значение 300, т.е. браузер сообщает серверу, что намерен удерживать постоянное соединение с сервером в течение 300 секунд.
 
Ответить с цитированием

  #7  
Старый 06.03.2010, 01:18
Chrome~
Постоянный
Регистрация: 13.12.2008
Сообщений: 354
Провел на форуме:
1747641

Репутация: 175
Отправить сообщение для Chrome~ с помощью ICQ
По умолчанию

wildshaman, спасибо большое, теперь понятно.
 
Ответить с цитированием

  #8  
Старый 06.03.2010, 02:42
dvion
Новичок
Регистрация: 11.03.2009
Сообщений: 19
Провел на форуме:
148278

Репутация: 3
По умолчанию

slesh,
Броузеры - да, смысл - в редких случаях актуален.
 
Ответить с цитированием

  #9  
Старый 06.03.2010, 15:14
Chrome~
Постоянный
Регистрация: 13.12.2008
Сообщений: 354
Провел на форуме:
1747641

Репутация: 175
Отправить сообщение для Chrome~ с помощью ICQ
По умолчанию

Слушайте, меня интересует следующие:

1) Как реализовать работу программы, если используешь Keep-Alive, но при этом сервак не передал значение Content-Length (количество отправленных байтов)?
2) Если принял все данные, как реализовать паузу (те же 300 сек.), оставаясь на линии, но при том, что бы программа не зависала от ожидания?
 
Ответить с цитированием

  #10  
Старый 06.03.2010, 16:18
dvion
Новичок
Регистрация: 11.03.2009
Сообщений: 19
Провел на форуме:
148278

Репутация: 3
По умолчанию

1)
а) 0D 0A (в отсутствии content-length)
б) читать блоки, пока блок не станет меньше его размера (в отсутствии content-length)

2)

- Буфер
- Три процедуры (открытие-коннект, работа с буфером, закрытие)
- Thread
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Живые прокси xdx ICQ 111 15.04.2007 13:10
Proxy Kozak-Scv Анонимность 2 11.02.2007 17:28
Коды состояния HTTP - Коды ошибок http сервера D=P=CH= MOD= *nix 6 15.10.2006 20:47
Технология HTTP Fingerprint gemaglabin Уязвимости 5 28.09.2006 00:01



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ