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

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

Доступ к Web-сервису из Delphi [D7]


user gosha ©   (2007-05-02 09:25:00) 

Здравствуйте, все.
Нужно мне написать в Delphi клиент для WEb-сервиса. web-интерфейс у меня уже есть. Я знаю какие xml-ки надо отсылать ему и как разбирать присланное.

Но я не знаю, как заставить Delphi отослать xmlку на сервер с запросом и как получить обратно ответ.

Пытаюсь сделать так:

var Doc2: DomDocument; myXMLHttpRequest : XMLHTTP;
...

myXMLHttpRequest:=CoXMLHTTP.Create;
myXMLHttpRequest.open('POST','localhost:4001/pipes/server.php',true,'','');
try
 myXMLHttpRequest.setRequestHeader('Content-Type','text/xml');
 myXMLHttpRequest.send('<?xml version="1.0" ?><methodCall><methodName>steel.getSteelList</methodName> <params></params></methodCall>'+#10#13);
 if myXMLHttpRequest.status = 200 then
   begin
     Doc2:=CoDOMDocument.Create;
     Doc2.loadXML(myXMLHttpRequest.responseText);
     Memo1.Lines.Add(doc2.xml);
   end
 else
   Memo1.Lines.Add('ERROR: '+myXMLHttpRequest.statusText);
except
 on E:EOleException do
   begin
     Memo1.Lines.Add('ERROR EoleException: '+e.Message);
   end;
end;


Sergey Masloff   (2007-05-02 11:38:00) [1]

Плохиш ©   (02.05.07 11:00) [1]
+1
Проблем вообще никаких.


clickmaker   (2007-05-02 11:01:00) [2]


> Пытаюсь сделать так:

и что?


Плохиш   (2007-05-02 11:00:00) [3]


> user gosha   (02.05.07 09:25)  

Веб-сервис сделан по стандарту? Тогда импортируешь WSDL от своего веб-сервиса (Объект WSDL-Import на странице WebServices при создании нового файла приложения) и ни про какие отсылаемые/принимаемые xml-ки знать ничего не надо, делфи сама с ними разберётся.


Наверх

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