twisted.internet.endpoints.clientFromString(reactor, description)
function documentationtwisted.internet.endpoints
View Source
Construct a client endpoint from a description string.
Client description strings are much like server description strings, although they take all of their arguments as keywords, aside from host and port.
You can create a TCP client endpoint with the 'host' and 'port' arguments, like so:
clientFromString(reactor, "tcp:host=www.example.com:port=80")
or, without specifying host and port keywords:
clientFromString(reactor, "tcp:www.example.com:80")
Or you can specify only one or the other, as in the following 2 examples:
clientFromString(reactor, "tcp:host=www.example.com:80") clientFromString(reactor, "tcp:www.example.com:port=80")
or an SSL client endpoint with those arguments, plus the arguments used by the server SSL, for a client certificate:
clientFromString(reactor, "ssl:web.example.com:443:" "privateKey=foo.pem:certKey=foo.pem")
to specify your certificate trust roots, you can identify a directory
with PEM files in it with the caCertsDir
argument:
clientFromString(reactor, "ssl:host=web.example.com:port=443:" "caCertsDir=/etc/ssl/certs")
Both TCP and SSL client endpoint description strings can include a 'bindAddress' keyword argument, whose value should be a local IPv4 address. This fixes the client socket to that IP address:
clientFromString(reactor, "tcp:www.example.com:80:" "bindAddress=192.0.2.100")
NB: Fixed client ports are not currently supported in TCP or SSL client endpoints. The client socket will always use an ephemeral port assigned by the operating system
You can create a UNIX client endpoint with the 'path' argument and optional 'lockfile' and 'timeout' arguments:
clientFromString( reactor, b"unix:path=/var/foo/bar:lockfile=1:timeout=9")
or, with the path as a positional argument with or without optional arguments as in the following 2 examples:
clientFromString(reactor, "unix:/var/foo/bar") clientFromString(reactor, "unix:/var/foo/bar:lockfile=1:timeout=9")
This function is also extensible; new endpoint types may be registered
as IStreamClientEndpointStringParserWithReactor
plugins. See that interface for more information.
Parameters | reactor | The client endpoint will be constructed with this reactor. |
description | The strports description to parse. (type: str ) | |
Returns | A new endpoint which can be used to connect with the parameters given by
description . (type: IStreamClientEndpoint ) | |
Present Since | 10.2 |