from ExamplePage import ExamplePage
class RequestInformation(ExamplePage):
"""Request information demo."""
def writeContent(self):
self.writeln('
Request Variables
')
self.writeln('The following table'
' shows the values for various request variables.
')
self.writeln('')
request = self.request()
self.dict('fields()', request.fields())
self.dict('environ()', request.environ())
self.dict('cookies()', request.cookies())
self.writeln('
')
setCookie = self.response().setCookie
setCookie('TestCookieName', 'CookieValue')
setCookie('TestExpire1', 'expires in 1 minute', expires='+1m')
def pair(self, key, value):
valueType = type(value)
if valueType is type([]) or valueType is type(()):
value = ', '.join(map(str, value))
self.writeln('| %s | %s |
'
% (key, self.htmlEncode(str(value))))
def list(self, codeString):
list = eval(codeString)
assert type(list) is type([]) or type(list) is type(())
self.pair(codeString, list)
def dict(self, name, dict):
self.writeln(''
'| %s | '
'
' % (name))
keys = dict.keys()
keys.sort()
for name in keys:
self.writeln(''
'| %s | %s |
' % (name, self.htmlEncode(
str(dict[name])).replace('\n', '
').replace(
',', ',').replace(';', ';').replace(':/', ':/')))