class documentation

class HTTPClient(basic.LineReceiver): (source)

Known subclasses: twisted.protocols.shoutcast.ShoutcastClient, twisted.web.proxy.ProxyClient, twisted.web.xmlrpc.QueryProtocol

View In Hierarchy

A client for HTTP 1.0.

Notes: You probably want to send a 'Host' header with the name of the site you're connecting to, in order to not break name based virtual hosting.

Method connectionLost Called when the connection is shut down.
Method connectionMade Called when a connection is made.
Method endHeaders Undocumented
Method extractHeader Given a complete HTTP header, extract the field name and value and process the header.
Method handleEndHeaders Called when all headers have been received.
Method handleHeader Called every time a header is received.
Method handleResponseEnd The response has been completely received.
Method handleResponsePart Undocumented
Method handleStatus Called when the status-line is received.
Method lineReceived Parse the status line and headers for an HTTP request.
Method rawDataReceived Override this for when raw data is received.
Method sendCommand Undocumented
Method sendHeader Undocumented
Instance Variable firstLine Are we waiting for the first header line?
Instance Variable length The length of the request body in bytes.
Instance Variable __buffer The buffer that stores the response to the HTTP request.
Instance Variable _header Part or all of an HTTP request header.

Inherited from LineReceiver:

Method clearLineBuffer Clear buffered data.
Method dataReceived Protocol.dataReceived. Translates bytes into lines, and calls lineReceived (or rawDataReceived, depending on mode.)
Method lineLengthExceeded Called when the maximum line length has been reached. Override if it needs to be dealt with in some special way.
Method sendLine Sends a line to the other end of the connection.
Method setLineMode Sets the line-mode of this receiver.
Method setRawMode Sets the raw mode of this receiver. Further data received will be sent to rawDataReceived rather than lineReceived.
Class Variable delimiter The line-ending delimiter to use. By default this is b'\r\n'.
Class Variable MAX_LENGTH The maximum length of a line to allow (If a sent line is longer than this, the connection is dropped). Default is 16384.
Instance Variable line_mode Undocumented
Instance Variable _buffer Undocumented
Instance Variable _busyReceiving Undocumented

Inherited from Protocol (via LineReceiver):

Method logPrefix Return a prefix matching the class name, to identify log messages related to this protocol instance.
Class Variable factory Undocumented

Inherited from BaseProtocol (via LineReceiver, Protocol):

Method makeConnection Make a connection to a transport and a server.
Instance Variable connected Undocumented
Instance Variable transport Undocumented

Inherited from _PauseableMixin (via LineReceiver):

Method pauseProducing Undocumented
Method resumeProducing Undocumented
Method stopProducing Undocumented
Instance Variable paused Undocumented
def connectionLost(self, reason): (source)

Called when the connection is shut down.

Clear any circular references here, and any external references to this Protocol. The connection has been closed.

Parameters
reason:twisted.python.failure.FailureUndocumented
def connectionMade(self): (source)

Called when a connection is made.

This may be considered the initializer of the protocol, because it is called when the connection is completed. For clients, this is called once the connection to the server has been established; for servers, this is called after an accept() call stops blocking and a socket has been received. If you need to send any greeting or initial message, do it here.

def endHeaders(self): (source)

Undocumented

def extractHeader(self, header): (source)
Given a complete HTTP header, extract the field name and value and process the header.
Parameters
header:bytesa complete HTTP request header of the form 'field-name: value'.
def handleEndHeaders(self): (source)
Called when all headers have been received.
def handleHeader(self, key, val): (source)
Called every time a header is received.
def handleResponseEnd(self): (source)

The response has been completely received.

This callback may be invoked more than once per request.

def handleResponsePart(self, data): (source)

Undocumented

def handleStatus(self, version, status, message): (source)
Called when the status-line is received.
Parameters
versione.g. 'HTTP/1.0'
status:bytese.g. '200'
messagee.g. 'OK'
def lineReceived(self, line): (source)
Parse the status line and headers for an HTTP request.
Parameters
line:bytesPart of an HTTP request header. Request bodies are parsed in HTTPClient.rawDataReceived.
def rawDataReceived(self, data): (source)
Override this for when raw data is received.
def sendCommand(self, command, path): (source)

Undocumented

def sendHeader(self, name, value): (source)

Undocumented

firstLine: bool = (source)
Are we waiting for the first header line?
length: int = (source)
The length of the request body in bytes.
__buffer: A BytesIO object. = (source)
The buffer that stores the response to the HTTP request.
_header: bytes = (source)
Part or all of an HTTP request header.