Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.01.2011, 12:11   #1
Nice42ru
Форумчанин
 
Регистрация: 25.10.2009
Сообщений: 131
По умолчанию HTTP запрос, try

Всем здравствуйте вот такая ситуация, выполняться HTTP запрос, после выполнения запроса ответ сервера храниться в переменной info, сервер может ответить 3мя разными значениями(в зависимости от запроса) и при каждом значении должна выполниться та или иная функция, подскажите как грамотно оформить данный код
Код:
var
info : String;
begin      

data.Add('acc=' + acc.text);
     HTTP:=TIdHTTP.create(nil);
     try
      Info:= HTTP.Post('xxxx.ru', data);
Вот код занесения ответа в переменную info, а дальше не получается!
Nice42ru вне форума Ответить с цитированием
Старый 28.01.2011, 12:12   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

ответ будет в info её и проверяйте.
try тут к теме отношения не имеет(разве что надо ловить ответы 404 и тп)
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 28.01.2011, 12:18   #3
Nice42ru
Форумчанин
 
Регистрация: 25.10.2009
Сообщений: 131
По умолчанию

Подскажите как её проверить!
Вот ответы от сервера какие могут поступить
1) <result>0</result>
2) <credit>(лбьое число)</credit>
3) <give_item>3,2(любые числа)<give_item>
Я понимаю что надо воспользоваться функцией pos, только немогу понять как весь код оформить
с помощью expect или finally помогите составить
Nice42ru вне форума Ответить с цитированием
Старый 28.01.2011, 12:21   #4
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

ловля исключений это не то что вам нужно.

вам нужно банальный if
Код:
if pos('result',info)>0 then //пришло result
else if pos('credit',info)>0 then //пришло credit
else id pos('give_item',info)>0 then //пришло give_item
else //пришло чтото левое, можно опустить.
может вам стоит азы подучить сначало?
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Старый 28.01.2011, 12:25   #5
Nice42ru
Форумчанин
 
Регистрация: 25.10.2009
Сообщений: 131
По умолчанию

Возможно, спасибо работает!
Nice42ru вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не выполняется HTTP запрос Kreadlling Win Api 1 03.05.2010 20:40
Как послать запрос HTTP 1.1 Izhic Работа с сетью в Delphi 0 07.12.2009 07:21
как послать http-запрос? Johnson Работа с сетью в Delphi 2 06.11.2009 13:28
http-запрос Черничный Работа с сетью в Delphi 1 22.08.2008 10:57
Получение строки через HTTP запрос Никки JavaScript, Ajax 6 24.04.2008 17:56