У меня есть камера, и я пытаюсь подключить к ней vis пену. Я попытался отправить сырые данные xml и нашел, что единственной вещью, мешающей xml пене работать, является неправильное пространство имен конверта Мыла.
Пространство имен конверта:
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
и я хочу переписать его к:
xmlns:SOAP-ENV="http://www.w3.org/2003/05/soap-envelope"
Для добавления пространства имен в Python, я пробую этот код:
message = Element('Element_name').addPrefix(p='SOAP-ENC', u='www.w3.org/ENC')
Но когда я добавляю SOAP-ENV
к пространству имен это не пишет, поскольку это - hardcoded в привязку пены. Существует ли способ перезаписать это в пене?
Спасибо за любую справку.
Мне удалось чтобы это работало, мыло-конверт жестко закодирован в bindings.py
, который хранится в suds.egg
, установленном в пакетах вашего сайта. Я изменил адрес конверта SOAP на http://www.w3.org/2003/05/soap-envelope
. Это было совместимо с моей камерой. Мне не удалось найти команду для перезаписи этого конверта пеной, поэтому я жестко закодировал ее в bindings.py.
Спасибо за любую помощь.
Ручное обновление binding.py
определенно неправильный путь. У вас должна быть возможность использовать ImportDoctor
для переопределения привязок по умолчанию. Посмотрите документацию по исправлению неработающих схем на сайте Suds.
Кроме того, какие версии Python и suds вы используете?