Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.04.24;
Скачать: CL | DM;

Вниз

Как избавиться от ошибки 404 и ей подобных в TIdHTTP   Найти похожие ветки 

 
a-leksey ©   (2003-03-03 18:26) [0]

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


 
Anatoly Podgoretsky ©   (2003-03-03 18:33) [1]

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


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

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


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


 
a-leksey ©   (2003-03-03 19:33) [3]

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

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

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


 
Anatoly Podgoretsky ©   (2003-03-03 19:36) [4]

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


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

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


 
a-leksey ©   (2003-03-04 13:45) [6]

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


 
nikkie ©   (2003-03-04 13:51) [7]

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


 
a-leksey ©   (2003-03-04 15:25) [8]

Зделал так - всеровно ошибка. Посоветуйте хоть Что-то...
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;


 
a-leksey ©   (2003-03-04 15:29) [9]

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



Страницы: 1 вся ветка

Текущий архив: 2003.04.24;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
8-77032
Axis_of_Evil
2003-01-15 11:54
2003.04.24
Cursor


14-77119
SergeN
2003-04-07 11:40
2003.04.24
Компоненты,будь я не ладен-2!!!


1-76896
GeorgeM
2003-04-14 17:24
2003.04.24
Ruler


4-77222
Andrej
2003-02-26 12:47
2003.04.24
Буфер


1-77024
Рома-р
2003-04-14 11:24
2003.04.24
Что такое CoInitialize not called ?