Так случилось, что модуль веб-сервисов как-то обошли стороной в документации. Вернее не совсем обошли - основные методы и классы описали, а вот пример в курсе для разработчиков весьма скудный и мало что проясняющий.
Я записал видео, в котором показал основные моменты работы с этим модулем на наглядном примере. Это не картина маслом, а только набросок карандашом, с которого можно писать свои картины. Исходники компонентов прилагаются.
Фисенко Александр написал: А как организовать доступ по паролю и или как то ограничить ?
В методе GetWebServiceDesc() -> массив $wsdesc->classes, в описании каждого класса можно указать "httpauth" => "Y", тогда будет происходить проверка авторизации. Соответственно, нужно создать метод для проверки и авторизации пользователя, который стучится на сервер. Пример http://dev.1c-bitrix.ru/api_help/webs.../index.php А реализация метода авторизации есть в стандартных компонентах модуля веб-сервисов.
Дрёмин Станислав, это все здорово, спасибо. Но как мне получить ответ с сервера тем-же SOAPом? Пробовал использовать __getLastResponse() -- ничего не вышло. Возвращает пустую строку.
@Красноперов Виталий, посмотрите что вам вернет __getFunctions(), проверьте функции веб-сервера. Пустая строка - это может быть что угодно. Веб-сервер может криво обрабатывать результат и ничего не возвращать, обращение к серверу не так построено - проверьте структуру массива, который передаете на сервер.
Дрёмин Станислав, Здравствуйте, Станислав! Я столкнулся с проблемой: на двух разных серверах расположены одни и те же файлы (один и тот же модуль, компонент bitrix:webservice.server, параметры этого компонента) - все аналогично друг другу. Но, на одном из серверов, перейдя по ссылке где расположен компонент я вижу то, что нужно - http://puu.sh/d7qhB/598352edc4.png , http://puu.sh/d7qiW/634a13a3d6.png , а на другом просто пустая страница с пустым содержимым компонента - http://puu.sh/d7qoD/e4ee1852df.png . В чем может быть проблема? Подозреваю, что это как-то связано с настройками сервера? Буду рад помощи, спасибо!
Константин Алексеенко ну если база и редакции битрикса одинаковы на обоих серверах, то проверяйте настройки SOAP на сервере. Сравнивайте версии SOAP, версии php.
Станислав Дрёмин какие преимущества дает данный модуль перед вышеупомянутыми библиотеками& кстати php_soap по сути заведомо быстрее отрабатывает ваши запросы.
Алексей Коваленко , вроде развитие и поддержка этого модуля или прекратилась, или только собираются. Я тут просто показал как его юзать, ежели кто захочет. Скорее всего этот модуль проигрывает стандартным библиотекам потому, что битриксы вроде как влепили туда свой парсер соаповского хмл-я, а он не самый быстрый. Стандартные библиотеки худо-бедно, но как-то развиваются, поэтому предпочтительнее их использовать.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».