Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

непонятки с POST в idHTTP


Bes ©   (2004-08-23 00:40:00) 

посылаю запрос POST'ом на HTTP сервер (компонент Indy HTTP - idHTTP), но почему-то неправильно задаются параметры...(использую куки через idCoockieManager)

вот такой исходный код

...
idHTTP1:TidHTTP;
...
procedure Tform1.Button1Click(Sender:TObject);
var
  postdata:TStringList;
begin
 try
    postdata:=TStringList.Create;
    postdata.values['id']:='1234';
    postdata.values['page']:='page1';
    idHTTP1.Post(' http://www.myhost.ru/',postdata);
 finally
    postdata.free;
 end;
end;

и не правильно отсылается...постоянно ошибку выдает "Connection Close Gracefully"
так вот, запустил сниффер, смотрю пакет с данными..


id=1234&page=page1&

т.е. как будто пустая строка появилась..
вывожу ее в TMemo


memo1.lines.addstrings(postdata);


и действительно последняя строка пустая, т.е. как будто Enter нажали и ничего не написали... да, и что самое интересное ее вроде и нету (т.е. postdata.indexof('')=-1), а потом появляется :)

но если я вывел postdata  в Tmemo, а потом удалил последний символ (всмысле символ перевода каретки), и отослал содержимое Tmemo то все ок... все работает и радуется

В чем проблема-то?


Erik1   (2004-08-23 10:58:00) [1]

Indy тут абсолютно непричем советую разобратся с TStringList.

Вобщето в методе Post можно передовать нетолько TStringList, но и TStream. Например можно написть так
Stream := TStringStream.Create('id=1234&page=page1');
idHTTP1.Post(' http://www.myhost.ru/', Stream);


Piter   (2004-08-23 03:52:00) [2]

Bes   (23.08.04 0:40)
постоянно ошибку выдает "Connection Close Gracefully"


насколько я помню indy - это не ошибка. Это исключение возбуждается при окончании коннекта. Так и должно быть... про остальное не знаю, с idHTTP не работал...


Наверх

Титульная страница Поиск, карта сайта Написать письмо