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

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

TIdHTTPServer, ответ для клиента при закачке файла [D7, WinXP]


Страницы:   1 2 3

Свой ©   (2007-11-23 13:36:00) 

компонент TIdHTTPServer
клиен посылает запрось на файл : www.my.ru/1.zip
проверяю есть ли файл, его нету отсылаю клиенту страницу что нет файла!
НО у клиента уже запустилась программа (любой менеджер закачек и он сказиват страницу html), ТАК ВОТ как этому менеджеру закачет сообщить что файла нету (и он написал что файл отсутстыует) а потом вывести в браузер страничку????


Reindeer Moss Eater   (2007-11-23 15:05:00) [21]

[20]


Свой   (2007-11-23 15:00:00) [22]

я не знаю!
как его посмотреть?


Anatoly Podgoretsky   (2007-11-23 14:59:00) [23]

> Свой  (23.11.2007 14:52:21)  [21]

Какой загловок ответа?


Reindeer Moss Eater   (2007-11-23 14:53:00) [24]

ответ менеджера:

Мне реальный заголовок ответа сервера нужен был, а не рассказы твоего менеджера что он там думает про 404 страницу.


Свой   (2007-11-23 14:52:00) [25]

да запрос http://127.0.0.1/1.zip   ввожу сразу в экспрорере


Reindeer Moss Eater   (2007-11-23 14:51:00) [26]

Тогда точить надо не сервер, а твой менеджер закачек.
Вот как ведет себя регет с твоим HTTP сервером:

Info 273 14:44:59 23.11.2007 Соединяемся с localhost (127.0.0.1:90)
Output 274 14:44:59 23.11.2007 GET /test HTTP/1.0
Output 274   User-Agent: Mozilla/4.0 (compatible; MSIE 5.0; Windows 98)
Output 274   Accept: */*
Output 274   Referer: http://localhost:90/
Output 274   Host: localhost:90
Input 275 14:44:59 23.11.2007 HTTP/1.1 404 BLA BLA BLA
Input 275   Connection: close
Input 275   Content-Type: text/html
Input 275   Server: Indy/9.0.18
Error 276 14:44:59 23.11.2007 Error #80070002(Не удается найти указанный файл.) in CRgHttpSession::RequestFile()
Info 277 14:44:59 23.11.2007 Пауза 5 секунд


Свой   (2007-11-23 14:49:00) [27]

запрос http://127.0.0.1/1.zip

ответ менеджера:
файл является текстовой текстовой html страницей хотите сохранить этот файл с расширением htm?


Reindeer Moss Eater   (2007-11-23 14:46:00) [28]

какой загловок ответа виден в менеджере закачек?


Свой   (2007-11-23 14:46:00) [29]

т.е. при отсутствии файла пишу:
AResponseInfo.ResponseNo:=404; и все?

больше действий никаких дальше нету у меня! (пока)!

он все равно качает файл и т.д че надо еще то ему?
файл качается пустой если оставляю ErrorMsg на сервере то в файле интернал сервер еррор!


Reindeer Moss Eater   (2007-11-23 14:45:00) [30]

И какой загловок ответа виден в менеджере закачек?


Свой   (2007-11-23 14:37:00) [31]

aResponseInfo.ContentText:=cgi.ErrorMsg; отключил
тогда файл качает пустой


Свой   (2007-11-23 14:34:00) [32]

if fileexists(rez) then
    begin
    rez:=ExpandFileName(dir+doc);
    AResponseInfo.ContentType:='application/'+zapfile;
    serv.ServeFile(AThread,AResponseInfo,rez);
    exit;
    end
   else
    begin
AResponseInfo.ResponseNo:=404;
//aResponseInfo.ContentText:=pp.Content;-выключил и все равно файл он качает с текстом Internal Server Error
    exit;
    end;


Reindeer Moss Eater   (2007-11-23 14:27:00) [33]

Сначала устанваливаем AResponseInfo.ResponseNo:=404, а потом поди страницу с приветом через ServeFile посылаем.
Ага?


Свой   (2007-11-23 14:24:00) [34]

AResponseInfo.ResponseNo:=404;

не помогает тоже, или есть еще куда написать? indy 9 использую


Reindeer Moss Eater   (2007-11-23 14:20:00) [35]

а что, там так дохрена мест (свойств у AResponseInfo) куда можно записать числовой код?


Свой   (2007-11-23 14:18:00) [36]

не пойму что то, перегрелся видно
AResponseInfo.ResponseText:=моя страница где написано что файла нет

а как написать менеджеру что нет файла??
куда 404 написать то?


Reindeer Moss Eater   (2007-11-23 14:15:00) [37]

Первое - это число, а второе - это строка.


Reindeer Moss Eater   (2007-11-23 14:14:00) [38]

Кроме того, я тебе сказал, что "писать надо" 404, а не '404'


Reindeer Moss Eater   (2007-11-23 14:12:00) [39]

ResponseText - это будущий боди документа в клиенте браузера.
В твоем случае там должен быть html текст страницы "not found".


Свой   (2007-11-23 14:10:00) [40]

дык писал
AResponseInfo.ContentText:='404';
и так
AResponseInfo.ResponseText:='404';
результат никакой


Страницы:   1 2 3

Наверх

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