Class Server
source code
object --+
|
Server
I handle requests for an OpenID server.
Some types of requests (those which are not checkid
requests) may be handed to my handleRequest method, and I will take care of it and
return a response.
For your convenience, I also provide an interface to Decoder.decode and SigningEncoder.encode through my methods decodeRequest and encodeResponse.
All my state is encapsulated in an OpenIDStore, which means I'm not generally pickleable
but I am easy to reconstruct.
Example:
oserver = Server(FileOpenIDStore(data_path))
request = oserver.decodeRequest(query)
if request.mode in ["checkid_immediate", "checkid_setup"]:
if self.isAuthorized(request.identity, request.trust_root):
response = request.answer(True)
elif request.immediate:
response = request.answer(False, self.base_url)
else:
self.showDecidePage(request)
return
else:
response = oserver.handleRequest(request)
webresponse = oserver.encode(response)
|
__init__(self,
store)
A new Server.
|
|
handleRequest(self,
request)
Handle a request.
|
OpenIDResponse
|
openid_check_authentication(self,
request)
{check_authentication} requests.
|
OpenIDResponse
|
openid_associate(self,
request)
{associate} requests.
|
OpenIDRequest
|
decodeRequest(self,
query)
Transform query parameters into an OpenIDRequest.
|
WebResponse
|
encodeResponse(self,
response)
Encode a response to a WebResponse, signing it first if appropriate.
|
Inherited from object :
__delattr__ ,
__getattribute__ ,
__hash__ ,
__new__ ,
__reduce__ ,
__reduce_ex__ ,
__repr__ ,
__setattr__ ,
__str__
|
Inherited from object :
__class__
|
A new Server.
-
- Parameters:
- Overrides:
object.__init__
|
Handle a request.
Give me a request, I will give you a response. Unless it's a type of
request I cannot handle myself, in which case I will raise
NotImplementedError . In that case, you can handle it
yourself, or add a method to me for handling that request type.
-
- Raises:
NotImplementedError - When I do not have a handler defined for that type of
request.
|
Transform query parameters into an OpenIDRequest.
If the query does not seem to be an OpenID request at all, I return
None .
-
- Parameters:
query (dict) - The query parameters as a dictionary with each key mapping to
one value.
- Returns: OpenIDRequest
- Raises:
ProtocolError - When the query does not seem to be a valid OpenID request.
See Also:
Decoder.decode
|
decoder
I'm using this to decode things.
-
- Type:
- Decoder
|
encoder
I'm using this to encode things.
-
- Type:
- Encoder
|
signatory
I'm using this for associate requests and to sign things.
-
- Type:
- Signatory
|