Как заставить Suds запускать прокси после использования NTLM для аутентификации Lists.asmx? WSDL? - PullRequest
1 голос
/ 14 июня 2011

Я пытаюсь использовать Python suds для доступа к списку SharePoint с помощью службы, но у меня возникают некоторые трудности с клиентским компонентом.Прежде всего, я за корпоративным брандмауэром, что означает, что когда аутентификация NTLM работает и suds получает пакет Lists.asmx® WSDL, он попытается выйти в Интернет, чтобы получить схему.Не удается.
Итак, я хотел бы помочь с прокси.Я попробовал Client.set_options( proxy = d ), где d - это словарь, а Suds жалуется на следующее:

Client.set_options( proxy = d )
TypeError: unbound method set_options() must be called with Client instance
   as first argument (got nothing instead)

Любые идеи?

1 Ответ

1 голос
/ 10 декабря 2011

Редактировать: Итак, я нашел обходной путь для этой проблемы, который может / не может помочь ОП, но определенно помог мне в той же ситуации. 'NTML' исправлена ​​опечатка.

Обходной путь заключается в локальном кэшировании файла XMLSchema.xml (см. Здесь: suds и soaplib без доступа к Интернету )

import os.path
from suds.xsd import sxbasic
sxbasic.Import.bind('http://www.w3.org/2001/XMLSchema',
'file://' + os.path.join(ROOT_DIR, 'cache', 'suds', 'XMLSchema.xml'))

И сохраните локальную копию XMLSchema.xml в ROOT_DIR / cache / suds /.

Идеальным решением было бы настроить проверку подлинности NTLM и прокси-сервер для suds, но я до сих пор не понял, как это сделать ...

...