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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.09.2015, 07:52   #1
Prostaf
Пользователь
 
Регистрация: 09.09.2015
Сообщений: 25
По умолчанию idhttp client, отправка запроса на сервер.

Здравствуйте, уважаемые. Есть сервер на idhttpserver, сейчас пишу клиент на idhttp. Запрос серверу приходит с параметрами, сервер их читает. Вот сам запрос http://<URL>:8443/payment_app.cgi?command=check&txn_i d=1234567&account=101&sum=10.45. Вопрос,(поправьте меня, если не правильно излагаю) как сделать случайную генерацию параметров txn_id, account, sum. Ну и запросы будут посылаться по таймеру.
Prostaf вне форума Ответить с цитированием
Старый 14.09.2015, 08:27   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
как сделать случайную генерацию параметров
Код:
 idhttp.get('http://<URL>:8443/payment_app.cgi?command=check&txn_i d='+IntTostr(Random(100500))+'&account=101&sum=10.45');
P.S. У меня в коде ошибка была, я исправил.
I'm learning to live...

Последний раз редактировалось Stilet; 16.09.2015 в 08:39.
Stilet вне форума Ответить с цитированием
Старый 14.09.2015, 08:30   #3
Prostaf
Пользователь
 
Регистрация: 09.09.2015
Сообщений: 25
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Код:
 idhttp.get('http://<URL>:8443/payment_app.cgi?command=check&txn_i d='+IntTostr(Random(100500))+'&account=101&sum=10.45');
Огромное спасибо!

Последний раз редактировалось Stilet; 16.09.2015 в 08:39.
Prostaf вне форума Ответить с цитированием
Старый 16.09.2015, 06:43   #4
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Не стоит останавливаться на влобешных решениях, всегда лучше искать более функциональный, гибкие и более изящные решения.
Это сказано в целом абстрактно, но к данному примеру применимо - если записать кучу таких конкатенаций (а их в данном примере потребуется 3 штуки), получится тот ещё smell да ещё и ошибка по невнимательности присутствуюет - нужно преобразование числа в строку ещё вызвать для конкатенации.
Я бы посоветовал использовать хорошую вещь - Format :
Код:
idhttp.get(Format('http://<URL>:8443/payment_app.cgi?command=check&txn_i d=%d&account=%d&sum=%f', [1, 1, 1.1]));
Вместо единичек можно подставить нужны числа, в том числе, сгенерированные случайно, только надо не забыть в начале программы вызвать Randomize, чтобы генератор случайных чисел работал, как Вы этого ожидаете.
Если пойти дальше, кстати, можно вынести и строковые части запроса в отдельные переменные и тоже их вставлять через формат со спецификатором %s, тогда и команды в запросе можно будет менять программно удобно.
phomm вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Клиент idHTTP, отправка GET запроса серверу. Prostaf Работа с сетью в Delphi 3 09.09.2015 13:41
Отправка сообщенмя через API VK и Rest Client Cruzel C++ Builder 1 29.09.2014 18:42
idHttp и отправка КУКИ в сервер Pcrepair Общие вопросы Delphi 6 12.05.2013 21:05
Отправка типизированных данных через Client/ServerSocket prod87 Работа с сетью в Delphi 2 10.07.2010 20:47
Отправка запроса на AMFPHP гейт через idHTTP ZaRDaK Работа с сетью в Delphi 8 04.09.2009 20:03