class documentation

class CookieAgent:

Constructor: CookieAgent(agent, cookieJar)

Implements interfaces: twisted.web.iweb.IAgent

View In Hierarchy

CookieAgent extends the basic Agent to add RFC-compliant handling of HTTP cookies. Cookies are written to and extracted from a CookieJar instance.

The same cookie jar instance will be used for any requests through this agent, mutating it whenever a Set-Cookie header appears in a response.

Present Since
11.1
Method __init__ Undocumented
Method request Issue a new request to the wrapped Agent.
Instance Variable cookieJar Initialized cookie jar to read cookies from and store cookies to.
Method _extractCookies Extract response cookies and store them in the cookie jar.
Instance Variable _agent Underlying Twisted Web agent to issue requests through.
def __init__(self, agent: IAgent, cookieJar: CookieJar):

Undocumented

def request(self, method: bytes, uri: bytes, headers: Headers | None = None, bodyProducer: IBodyProducer | None = None) -> Deferred[IResponse]:

Issue a new request to the wrapped Agent.

Send a Cookie header if a cookie for uri is stored in CookieAgent.cookieJar. Cookies are automatically extracted and stored from requests.

If a 'cookie' header appears in headers it will override the automatic cookie header obtained from the cookie jar.

See Also
Agent.request
cookieJar: CookieJar =

Initialized cookie jar to read cookies from and store cookies to.

def _extractCookies(self, response: IResponse, request: _FakeStdlibRequest) -> IResponse:

Extract response cookies and store them in the cookie jar.

Parameters
response:IResponsethe Twisted Web response that we are processing.
request:_FakeStdlibRequestA _FakeStdlibRequest wrapping our Twisted request, for CookieJar to extract cookies from.
Returns
IResponseUndocumented
_agent: IAgent =

Underlying Twisted Web agent to issue requests through.