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

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

Как избавиться от ошибки 404 и ей подобных в TIdHTTP [D6, Win95/98]


a-leksey ©   (2003-03-03 18:26:00) 

Вот запрос HTTP.Get(Url,Response); но когда Url левый происходит
обрыв соединения. Пробовал проверять HTTP.ResponseCode, но не помогает
збой происходит при вызове HTTP.Get(Url,Response); как можно отключить
такую реакцию компонента, чтобы он работал не смотря не на какие ошибки.
Тобишь, при ошибке, чтобы Response был пустым.


a-leksey   (2003-03-04 15:29:00) [1]

За ошибки извиняюсь. Я, просто, кнопки жму быстрее чем думаю...


a-leksey   (2003-03-04 15:25:00) [2]

Зделал так - всеровно ошибка. Посоветуйте хоть Что-то...
try
HTTP.Get(Url,Response);
except
on err: EidProtocolReplyError do
begin
case err.ReplyErrorCode of
400..417:begin end;
500..505:begin end;
end;
end;
end;


nikkie   (2003-03-04 13:51:00) [3]

мудришь больно... используй try...except.


a-leksey   (2003-03-04 13:45:00) [4]

Всетаки меня так никто и не понял. Суть в том что пользователь может задать любой урл (ну на угад или по пьяне буквы перепутает). HTTP.Get в этом случаее выдаст ошибку, показав страшное красное окно. Мне нужно, чтобы окна небыло, чтобы ошибка прошла гладко. Видь 404 ошибка не единственная, есть и другие. Мне нужно подавить реакцию TIdHTTP на эти ошибки. Ну а после этого используя HTTP.ResponseCode можно направить приложение по другом пути.
Я что-то слышал о EidProtocolReplyError но как им пользоваться я не знаю...


Anatoly Podgoretsky   (2003-03-03 19:36:00) [5]

В общем случае никак, вместо одной страницы может быть выдана другая, даже с картинкой


Anatoly Podgoretsky   (2003-03-03 19:36:00) [6]

http://delphi.mastak.ru/404.html


a-leksey   (2003-03-03 19:33:00) [7]

"Не задавать адреса не существующих страниц." Даже я иногда сам в браузере пишу адреса на угад. И этим проблему не ришить.

"А он (обрыв соединения) все равно произойдет, даже в том случае, если URL не левый. Протокол такой."

Хорошо пусть обрыв будет, но как избавиться от окна ошибки, как заставить TIdHTTP молча оборвать соединение?


Reindeer Moss Eater   (2003-03-03 18:44:00) [8]

но когда Url левый происходит
обрыв соединения.


А он (обрыв соединения) все равно произойдет, даже в том случае, если URL не левый. Протокол такой.


Anatoly Podgoretsky   (2003-03-03 18:33:00) [9]

Не задавать адреса не существующих страниц.


Наверх

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