Запустить функцию на Web-сервисе | |
---|---|
Аркадий Автор Сообщений: 252 Откуда: Санкт-Петербург Дата регистрации: 30.11.2005 |
Подскажите, пожалуйста, можно ли через объект "MSXML2.XMLHTTP" или каким-либо другим, доступным фоксу способом, запустить функцию на web-сервисе, не зная примера SOAP-запроса (как на Java).
Поставщик сервиса в описании предоставил только имена функций и описание параметров/структур. |
Re: Запустить функцию на Web-сервисе | |
---|---|
of63 Сообщений: 25161 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
"Запросто", надо подобрать только режимы обмена, хоть путем проб и ошибок, читая ответы сервера, а лучше где-нибудь подсмотреть, на рабочей системе.
|
Re: Запустить функцию на Web-сервисе | |
---|---|
Аркадий Автор Сообщений: 252 Откуда: Санкт-Петербург Дата регистрации: 30.11.2005 |
А что надо писать в Send()?
Вот одна из простейших функций GetUpmListResponsegetUpmList (UserInfouserInfo, GetListRequest request) Входные параметры: Тип Параметр Описание Обязательное поле UserInfo userInfo сведения о пользователе Да GetListRequest request параметры запроса (составной тип) Да userInfo - это логин и пароль GetListRequest - тоже набор значений Не представляю, как надо действовать, как это отправить. |
Re: Запустить функцию на Web-сервисе | |
---|---|
of63 Сообщений: 25161 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Не знаю про SOAP, нужен ли по спецификации. Все таки спецификацию надо бы иметь... Поиском ищется документ с такими ф-иями, там есть и описалово (слова "wsdl").
veb-servisy_eis_oms.uz_.upm_ - действительно, просто описание методов... 10.20.31.195 - якобы описание, но у меня здесь не открывается... Для первых экспериментов можно посылать в виде GET-запроса (просто в браузере) в 10.20.31.195 /ws, посмотреть как реагирует сервер. В Send посылается тело запроса (POST-схема посылки, в GET-схеме все выражается в одной адресной строке) Пример GET-схемы h t t p://forum.foxclub.ru/read.php?29,820888 где forum.foxclub.ru - адрес сервиса read.php - "метод", хотя имя метода тоже может надо передавать как параметр ? - разделитель параметров запроса 29,820888 - первый параметр запроса параметры разделяются символом & Все это возможно придется закодировать в UTF-8, и в URL-кодирование обернуть, если параметры языковые, т.е. символы не ASCII (почитай на форуме, тут полно примеров) В POST-схеме все тоже самое, только параметры запроса надо передавать в Send Доб. Почитал про wsdl - habr.com REST-схема общения с сервером (это схема общения приближенная к HTTP-запросам) проста: "" Проверим работу нашего сервиса. Для этого достаточно передать параметры вызова метода в сроке GET-запроса (в браузере или из XMLHTTP-запроса): ?method=getExchange&code=840&date=2008-11-29 или ?method=getExchange&arg1=840&arg2=2008-11-29 Исправлено 1 раз(а). Последнее : of63, 10.01.20 11:08 |
Re: Запустить функцию на Web-сервисе | |
---|---|
Аркадий Автор Сообщений: 252 Откуда: Санкт-Петербург Дата регистрации: 30.11.2005 |
Спасибо! Если не удастся добиться примеров SOAP-запросов, попробую такие строчки.
Не нашёл только, как передать в строке структуры; что если их несколько и в них параметры имеют одинаковые имена? Как это оформить? |
Re: Запустить функцию на Web-сервисе | |
---|---|
of63 Сообщений: 25161 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Вместо GET-запроса можно послать POST-запрос, тогда в этом .Send можно указать любую длинную строку.
Собственно "структура" - может это просто XML-структура, просто строка. Тогда в Content-Type (т.н. "заголовки запроса") надо указать что это xml/txt ...как то так... Надо пробовать и бороться. При таком описалове придется снифферить рабочий обмен с сервисом, т.е. надо иметь рабочую систему. |
© 2000-2024 Fox Club  |