Форум: "Сети";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];
Внизнепонятки с POST в idHTTP Найти похожие ветки
← →
Bes (2004-08-23 00:40) [0]посылаю запрос 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 то все ок... все работает и радуется
В чем проблема-то?
← →
Piter © (2004-08-23 03:52) [1]Bes (23.08.04 0:40)
постоянно ошибку выдает "Connection Close Gracefully"
насколько я помню indy - это не ошибка. Это исключение возбуждается при окончании коннекта. Так и должно быть... про остальное не знаю, с idHTTP не работал...
← →
Erik1 (2004-08-23 10:58) [2]Indy тут абсолютно непричем советую разобратся с TStringList.
Вобщето в методе Post можно передовать нетолько TStringList, но и TStream. Например можно написть так
Stream := TStringStream.Create("id=1234&page=page1");
idHTTP1.Post("http://www.myhost.ru/", Stream);
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2004.10.31;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.044 c