Форум: "Сети";
Текущий архив: 2003.12.04;
Скачать: [xml.tar.bz2];
ВнизTIdHttpServer TIdHttp TIdTCPClient TIdTCPServer Найти похожие ветки
← →
ilka (2003-10-01 15:01) [0]Добрый день. Написал код для пересылки данных используя TIdTCPClient и TIdTCPServer, переделал под TIdHttpServer и TIdHttp но он не работает, TIdHttpServer.OnExecute()- не вызывается.
//send
var
m:TMemoryStream;
m:=TMemoryStream.Create;
m.LoadFromFile("2.txt");
IdHTTP1.WriteStream(m,true,true);
.....
TForm1.IdHTTPServer1Execute(...)
var
m:TMemoryStream;
....
m:=TMemoryStream.Create;
AThread.Connection.ReadStream(m);
m.SaveToFile("4.txt");
← →
Reindeer Moss Eater (2003-10-01 15:16) [1]Если OnExecute и вправду не вызывается, значит у сервера определены CommandHandlers
← →
ilka (2003-10-04 13:50) [2]>Reindeer Moss Eater © (01.10.03 15:16) [1]
а что значит "у сервера определены CommandHandlers"
← →
Reindeer Moss Eater (2003-10-06 09:47) [3]То и значит, что список CommandHandlers - не пустой.
← →
ilka (2003-10-06 17:09) [4]что это значит..
и как с этим бороться ?..
← →
Reindeer Moss Eater (2003-10-06 17:28) [5]Смени пластинку
← →
Reindeer Moss Eater (2003-10-07 09:09) [6]TIdHTTPServer.CommandHandlers : TIdCommandHandlers;
Если у сервера определены хендлеры команд (свойство CommandHandlers не пустое), то событие OnExecute НЕ ГЕНЕРИРУЕТСЯ сервером.
Вся обработка происходит в OnBeforeCommandHandler, OnAfterCommandHandler, OnNoCommand.
Все.
Это если твой клиент вообще сумел соединиться с сервером и что-о посылает ему (в чем я сомневаюсь уже)
← →
ilka (2003-10-08 19:28) [7]>Reindeer Moss Eater © (07.10.03 09:09) [6]
в делфе6 у TIdHttpServer нет CommandHandlers
← →
Reindeer Moss Eater (2003-10-09 08:47) [8]Значит твой клиент не соединен с сервером или ничего не пишет ему.
← →
ilka (2003-10-09 13:00) [9]клиеент соединен с сервером
но вместо OnExecute вызывается Server.ONCommandOther
и в нем мои данные, но проблема в том что я немогу использовать ONCommandOther тк надо будет пересылать заархивированные данные, а ONCommandOther не дает возможности их прислать.
← →
Reindeer Moss Eater (2003-10-09 13:05) [10]>Reindeer Moss Eater © (07.10.03 09:09) [6]
в делфе6 у TIdHttpServer нет CommandHandlers
Ну и как тебя понимать?
но проблема в том что я немогу использовать ONCommandOther тк надо будет пересылать заархивированные данные, а ONCommandOther не дает возможности их прислать.
Это почему еще?
← →
ilka (2003-10-09 13:32) [11]>Ну и как тебя понимать?
TIdHttpServer.CommandHandlers не существует
>Это почему еще?
serverCommandOther(Thread: TIdPeerThread; const asCommand, asData, asVersion: String);
как я понял полученные данные назодятся в asData:string, а запакованные данные содержат недопустимые для string символы.
если через client.POst(..., TStream("файл") ,...) то вызывается
Server.OnCommandGet(AThread: TIdPeerThread; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
где данные в ARequestInfo.Params.Text. Опятьже данные доходят не все
← →
Reindeer Moss Eater (2003-10-09 14:26) [12]Если TIdHttpServer.CommandHandlers не существует, то откуда взялось событие OnCommandOthers?????
serverCommandOther(Thread: TIdPeerThread; const asCommand, asData, asVersion: String);
как я понял полученные данные назодятся в asData:string, а запакованные данные содержат недопустимые для string символы.
Какие такие "запакованные" данные? Это данные из реквеста отправленного из БРАУЗЕРА.
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2003.12.04;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.004 c