Python клиент для Zimbra,ч.2

Ответить
Аватара пользователя
Solitaire
Сообщения: 3
Зарегистрирован: Вт дек 13, 2016 2:58 pm

Python клиент для Zimbra,ч.2

Сообщение Solitaire » Вт май 16, 2017 11:55 am

В нем передается идентификатор сессии, токен и прочие мета-данные. При запросе аутентификации передается пустой контекст.
Неприятные особенности Zimbra Soap API и SOAPpy
— особенность Zimbra Soap API: при работе с Soap API в каждом запросе/ответе может присутствовать идентификатор сессии (sessionId), при аутентификации он также присутствует в теле ответа. Само по себе это особых проблем не представляет, но при работе с SOAPpy это создает определенную проблему, о чем далее.
— особенности SOAPpy: проблема 1: при разборе SOAP сообщения, SOAPpy пытается построить дерево с сылками на другие элементы внутри документа, при чем делает это в не зависимости от вашего на то желания. Ссылки определяются наличием в элементе атрибута id, который должен ссылаться на соответствующие идентификаторы других элементов. Естесственно, возникает конфликт при обработке успешного ответа аутентификации от Zimbra, и SOAPpy жалуется на повторяющийся идентификатор. В SOAPpy нет возможности отключить построение этого дерева ссылок.
проблема 2: не удалось заставить SOAPpy аутентифицироваться на прокси.
Возможные решения проблемы 1:
— вариант 1: забыть про SOAPpy и написать полностью свой парсер и билдер, что присутствовало в скрипте до перехода на SOAPpy, возвращаться обратно на велосипед как-то не очень хотелось.
— вариант 2: отписать свой парсер для аутентификации, далее продолжать работать с SOAPpy.

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей