Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.05.03;
Скачать: [xml.tar.bz2];

Вниз

WinInet - не все странички могу получить   Найти похожие ветки 

 
чебурашка картман ©   (2009-03-25 12:28) [0]

Добрый день!

Создаю соединение, пытаюсь получать странички:

const
 HTTP_PORT = 80;
 CLRF = #13#10;
 Header = "Content-Type: application/x-www-form-urlencoded" + CLRF;

 FSession := InternetOpen("DMFR", INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
 if not Assigned(FSession) then Exit;
 try
   // Попытка соединения с сервером
   FConnect := InternetConnect(FSession, PChar(FHost), HTTP_PORT, nil,
                               "HTTP/1.1", INTERNET_SERVICE_HTTP, 0, 0);
   if not Assigned(FConnect) then Exit;
   try
     // Подготавливаем запрос страницы
     Ansi := "text/*";
     FRequest := HttpOpenRequest(FConnect, "GET", PChar(FScript), "HTTP/1.1",
                                 "", @Ansi, INTERNET_FLAG_RELOAD, 0);
     if not Assigned(FConnect) then Exit;
     try
       // Добавляем заголовки
       if not (HttpAddRequestHeaders(FRequest, Header, Length(Header),
                                     HTTP_ADDREQ_FLAG_REPLACE or
                                     HTTP_ADDREQ_FLAG_ADD)) then Exit;
       // Отправляем запрос
       if not (HttpSendRequest(FRequest, nil, 0, nil, 0)) then Exit;
....

но не все, для некоторых приходит ответ Bad Request... так думаю, надо что-то еще в заголовок добавить. Что?


 
Rouse_ ©   (2009-03-25 12:53) [1]

Посмотри сниффером что отправляется из браузера и сформируй правильный заголовок запроса.


 
чебурашка картман ©   (2009-03-25 13:34) [2]


> Rouse_ ©   (25.03.09 12:53) [1]

поглядел... очень много всего отправляется... и несколько раз... и POST присутствует...
Что из отправляемого необходимо и как узнать, что этого достаточно? Если я буду формировать один и тот же заголовок, полученный сниффером, все странички получу?


 
Rouse_ ©   (2009-03-25 15:02) [3]


> Если я буду формировать один и тот же заголовок, полученный
> сниффером, все странички получу?

Нет конечно, для каждого должен быть свой, темболее у тебя идет мешанина из GET/POST


 
чебурашка картман ©   (2009-03-25 15:30) [4]


> Rouse_ ©   (25.03.09 15:02) [3]

Хорошо, а как мне узнать, какой именно заголовок нужен? Как браузеры это узнают?


 
Rouse_ ©   (2009-03-25 15:59) [5]

Они заполняют заголовок исходя из того что именно хотят получить от сервера. Более подробно по всем заголовкам есть в RFC


 
чебурашка картман ©   (2009-03-25 16:33) [6]


> Rouse_ ©   (25.03.09 15:59) [5]

Спасибо, с этим понятно, но... получить я хочу всегда только текст странички... т.е. получается, что просто не все данные в заголовок заношу(сейчас нет возможности проверить)?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2009.05.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.099 c
15-1235939060
Мари
2009-03-01 23:24
2009.05.03
Задачка на Делфи


15-1236055605
Дмитрий С
2009-03-03 07:46
2009.05.03
HotKey на всех Desktop-ах.


2-1237419179
Новичок
2009-03-19 02:32
2009.05.03
Программное добавление полей в ADOTable1


10-1148459999
irena_ok
2006-05-24 12:39
2009.05.03
Создание и заполнениев таблиц в Ворде


15-1234962314
KSergey
2009-02-18 16:05
2009.05.03
Что движет авторами статей?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский