Übergeben Sie die Route an den Konstruktor des suds-community-Clients, wenn das Laden der WSDL sie benötigt:

from suds.client import Client

client = Client(
    'https://service.example/soap?wsdl',
    proxy={
        'http': 'http://proxy.example:8080',
        'https': 'http://proxy.example:8080',
    },
)

Die Schlüssel der Zuordnung sind Zielschemas; beide können denselben HTTP-Vermittler bezeichnen. Für einen öffentlichen SOAP-Test, der einen nicht authentifizierten öffentlichen Vermittler zulässt, verwenden Sie Kandidaten aus der HTTP-Proxy-Liste für diese HTTP-Proxy-URLs. WSDL-Importe und Schemas können ebenfalls während der Konstruktion abgerufen werden. Ein späteres set_options kann spätere Arbeit beeinflussen, aber keinen Konstruktor reparieren, der bereits fehlgeschlagen ist.

Der gepflegte Transport baut aus seiner Zuordnung einen expliziten urllib ProxyHandler. Eine leere Zuordnung unterscheidet sich von der Standard-Proxy-Erkennung, daher muss eine exportierte Umgebung, die in einem kleinen urllib-Programm funktioniert, Suds nicht steuern.

Verwenden Sie die Zuordnung für eine feste Route. Für zielabhängige Systemrichtlinien wählen Sie eine Transportintegration, die sie bewusst beibehält. Jeden Handler durch eine leere Liste zu ersetzen, kann spezialisiertes Authentifizierungsverhalten verlieren.

Ein übergebener benutzerdefinierter Opener muss die beabsichtigte Route selbst tragen. Das Installieren eines globalen Openers ersetzt keinen vorhandenen privaten; konfigurieren Sie den Transport, den dieser SOAP-Client tatsächlich nutzt.

Ähnliche Artikel