suds.transport package¶
Submodules¶
suds.transport.http module¶
Basic HTTP transport implementation classes.
- class suds.transport.http.HttpAuthenticated(**kwargs)¶
Bases:
HttpTransportProvides basic HTTP authentication for servers that do not follow the specified challenge/response model. Appends the
AuthorizationHTTP header with base64 encoded credentials on every HTTP request.- addcredentials(request)¶
- credentials()¶
- open(request)¶
Open the URL in the specified request.
- Parameters:
request (
Request) – A transport request.- Returns:
An input stream.
- Return type:
stream
@raise TransportError: On all transport errors.
- send(request)¶
- Send SOAP message. Implementations are expected to handle:
proxies
HTTPheaderscookies
sending message
brokering exceptions into
TransportError
- Parameters:
request (
Request) – A transport request.- Returns:
The reply
- Return type:
Reply
@raise TransportError: On all transport errors.
- class suds.transport.http.HttpTransport(**kwargs)¶
Bases:
TransportBasic HTTP transport implemented using using urllib2, that provides for cookies & proxies but no authentication.
- addcookies(u2request)¶
Add cookies in the cookiejar to the request.
- Parameters:
u2request – A urllib2 request.
- Return type:
u2request: urllib2.Request.
- getcookies(fp, u2request)¶
Add cookies in the request to the cookiejar.
- Parameters:
u2request – A urllib2 request.
- Return type:
u2request: urllib2.Request.
- open(request)¶
Open the URL in the specified request.
- Parameters:
request (
Request) – A transport request.- Returns:
An input stream.
- Return type:
stream
@raise TransportError: On all transport errors.
- send(request)¶
- Send SOAP message. Implementations are expected to handle:
proxies
HTTPheaderscookies
sending message
brokering exceptions into
TransportError
- Parameters:
request (
Request) – A transport request.- Returns:
The reply
- Return type:
Reply
@raise TransportError: On all transport errors.
- u2handlers()¶
Get a collection of urllib handlers.
- Returns:
A list of handlers to be installed in the opener.
- Return type:
[Handler,…]
- u2open(u2request, timeout=None)¶
Open a connection.
- Parameters:
u2request (urllib2.Request.) – A urllib2 request.
- Returns:
The opened file-like urllib2 object.
- Return type:
fp
- u2opener()¶
Create a urllib opener.
- Returns:
An opener.
- Return type:
OpenerDirector
- u2ver()¶
Get the major/minor version of the urllib2 lib.
- Returns:
The urllib2 version.
- Return type:
float
suds.transport.https module¶
Contains classes for authenticated HTTP transport implementations.
- class suds.transport.https.HttpAuthenticated(**kwargs)¶
Bases:
HttpTransportProvides basic HTTP authentication that follows the RFC-2617 specification.
As defined by specifications, credentials are provided to the server upon request (HTTP/1.0 401 Authorization Required) by the server only.
- Variables:
pm – The password manager.
handler – The authentication handler.
- addcredentials(request)¶
- credentials()¶
- open(request)¶
Open the URL in the specified request.
- Parameters:
request (
Request) – A transport request.- Returns:
An input stream.
- Return type:
stream
@raise TransportError: On all transport errors.
- send(request)¶
- Send SOAP message. Implementations are expected to handle:
proxies
HTTPheaderscookies
sending message
brokering exceptions into
TransportError
- Parameters:
request (
Request) – A transport request.- Returns:
The reply
- Return type:
Reply
@raise TransportError: On all transport errors.
- class suds.transport.https.WindowsHttpAuthenticated(**kwargs)¶
Bases:
HttpAuthenticatedProvides Windows (NTLM) based HTTP authentication.
@author: Christopher Bess
suds.transport.options module¶
Classes modeling transport options.
- class suds.transport.options.Options(**kwargs)¶
Bases:
Skin- Options:
- B{proxy} - An HTTP proxy to be specified on requests, defined as
- {protocol:proxy, …}.
type:
dictdefault: {}
- B{timeout} - Set the URL open timeout (seconds).
type:
floatdefault: 90
- B{headers} - Extra HTTP headers.
- type:
dict strB{http} - TheHTTPprotocol proxy URL.strB{https} - TheHTTPSprotocol proxy URL.
- type:
default: {}
- B{username} - The username used for HTTP authentication.
type:
strdefault: None
- B{password} - The password used for HTTP authentication.
type:
strdefault: None
Module contents¶
Contains transport interface (classes).
- class suds.transport.Reply(code, headers, message)¶
Bases:
UnicodeMixinA transport reply.
- Variables:
code – The HTTP code returned.
headers – The HTTP headers included in the received reply.
message – The message received as a reply.
- class suds.transport.Request(url, message=None, timeout=None)¶
Bases:
UnicodeMixinA transport request.
Request URL input data may be given as either a byte or a unicode string, but it may not under any circumstances contain non-ASCII characters. The URL value is stored as a str value internally. With Python versions prior to 3.0, str is the byte string type, while with later Python versions it is the unicode string type.
- Variables:
url – The URL for the request.
message – The optional message to be sent in the request body.
headers – The HTTP headers to be used for the request.
- class suds.transport.Transport¶
Bases:
objectThe transport
interface.- open(request)¶
Open the URL in the specified request.
- Parameters:
request (
Request) – A transport request.- Returns:
An input stream.
- Return type:
stream
@raise TransportError: On all transport errors.
- send(request)¶
- Send SOAP message. Implementations are expected to handle:
proxies
HTTPheaderscookies
sending message
brokering exceptions into
TransportError
@raise TransportError: On all transport errors.
- exception suds.transport.TransportError(reason, httpcode, fp=None)¶
Bases:
Exception