Ich baue einen SOAP-Client mit Python 2.7.3 und verwende die von Canonical zur Verfügung gestellte Bibliothek suds 0.4.1. Der Server verwendet die Standardauthentifizierung über HTTPS.
Die Authentifizierung auf dem Server kann nicht bestanden werden, auch nicht, um an die WSDL zu gelangen. Ich erhalte den folgenden Fehler:
suds.transport.TransportError: HTTP-Fehler 401: Nicht autorisiert
Ich habe beide Authentifizierungsmethoden ausprobiert, die in der Suddokumentation beschrieben sind, bekomme aber immer noch den obigen Fehler die client = Client(url, ...)
-Zeile. Ich habe die Anmeldeinformationen und die Möglichkeit der Verbindung in einem Webbrowser bestätigt, was gut funktioniert.
Nachdem ich wsdl_url
, username
und password
deklariert habe, habe ich versucht:
Letzteres scheint zumindest eine Antwort von der WSDL-URL in eine weitere Frage zur HTTP-Authentifizierung mit Schaum .
Diese Frage unterscheidet sich von dieser ähnlichen Frage Ich benutze:
%Vor% und vom Traceback kommt der Aufruf client = Client(url, ...)
eindeutig auf suds.transport.https.py:
Was vermisse ich?
suds hat den Autorisierungsheader nicht zur Anfrage hinzugefügt, also habe ich ihn manuell gesetzt:
%Vor%Tags und Links python soap wsdl basic-authentication suds