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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.09.2015, 10:41   #1
Prostaf
Пользователь
 
Регистрация: 09.09.2015
Сообщений: 25
По умолчанию Запись данных в xml файл

Здравствуйте, уважаемые форумчане. У меня вопрос! Есть http server он принимает http(get) запрос, все хорошо, он считывает параметры и т.д. Теперь же нужно научить сервер создавать ответ в xml.
Как создавать xml в delphi я знаю, вот код
Код:
procedure Example2;
var
  Xml: TStringList;
begin
   // создаем объект
   Xml := TStringList. Create;
 
   // формируем документ
   Xml. Add ('<?xml version="1.0" encoding="UTF-8"?>');
   Xml. Add ('<response>');
   Xml. Add ('    <osmp_txn_id>123456789</osmp_txn_id>');
   Xml. Add ('    <result>0</result>');
   Xml. Add ('    <comment></comment>');
   Xml. Add ('    <pay_id>XXXX</pay_id>');
   Xml. Add ('</response>');
 
   // записываем
   Xml. SaveToFile ('C:\Example2.xml');
 
   // освобождаем память
   FreeAndNil (Xml);
 
end;  // procedure Example2
Только в этом варианте xml формируется за счет тех данных, которые я ввожу сам.
Вопрос! Какой написать код, чтобы delphi формировал xml ответ в зависимости от http(get) запроса?
Вот пример запроса http://<URL>:8443/payment_app.cgi?command=check&txn_i d=1234567&account=101&sum=10.45
И еще, osmp_txn_id=txn_id
result - код завершения
comment - комментарий
pay_id - идентификатор
Prostaf вне форума Ответить с цитированием
Старый 17.09.2015, 11:02   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Какой компонент обслуживает сервер?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.09.2015, 11:49   #3
Prostaf
Пользователь
 
Регистрация: 09.09.2015
Сообщений: 25
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Какой компонент обслуживает сервер?
Если я вас правильно понял...сервер написан с помощью idhttpserver.
Prostaf вне форума Ответить с цитированием
Старый 17.09.2015, 12:28   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Тогда так:
Код:
procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin

AResponseInfo.ContentText:=''
  +'<?xml version="1.0" encoding="UTF-8"?>'
   +'<response>'
  +'    <osmp_txn_id>'+ARequestInfo.Params['txn_id']+'</osmp_txn_id>'
  +'    <result>0</result>'
  +'    <comment></comment>'
   +'    <pay_id>XXXX</pay_id>'
  +'</response>'

;
end;
Идея ясна?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 17.09.2015, 12:31   #5
Prostaf
Пользователь
 
Регистрация: 09.09.2015
Сообщений: 25
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Тогда так:
Код:
procedure TForm1.IdHTTPServer1CommandGet(AContext: TIdContext;
  ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo);
begin

AResponseInfo.ContentText:=''
  +'<?xml version="1.0" encoding="UTF-8"?>'
   +'<response>'
  +'    <osmp_txn_id>'+ARequestInfo.Params['txn_id']+'</osmp_txn_id>'
  +'    <result>0</result>'
  +'    <comment></comment>'
   +'    <pay_id>XXXX</pay_id>'
  +'</response>'

;
end;
Идея ясна?
Огромное спасибо) Все сразу стало понятно!)
Prostaf вне форума Ответить с цитированием
Старый 17.09.2015, 12:33   #6
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

Цитата:
Есть http server он принимает http(get) запрос, все хорошо, он считывает параметры и т.д.
Вот эти самые параметры оттуда где они есть (HTTPServer) и надо
1) как-то передать в процедуру Example2
procedure Example2M(......);
2) как-то переданные данные там использовать.
begin
Xml. Add (' <osmp_txn_id>'+.....+'</osmp_txn_id>');
программа — запись алгоритма на языке понятном транслятору
evg_m вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
XML Поиск элемента по значению атрибуту и запись в новый файл Rastamans C# (си шарп) 0 15.12.2012 22:34
Последовательная запись в xml файл из DataGridView DENIS_POLOTSK C# (си шарп) 5 08.06.2012 11:35
Запись данных данных из ListBox в файл Jrcfyf C# (си шарп) 3 20.01.2012 15:44
Добавление данных в XML файл. LexaL Помощь студентам 3 24.12.2010 09:25
Запись данных в файл balamut JavaScript, Ajax 1 29.05.2009 14:39