Tres Seaver
2012-03-18 6919cb8daf7c7f7291b8aa10a28334c1a61848e9
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
import wsgiref.util
import wsgiref.headers
try:
    from Cookie import SimpleCookie
    from Cookie import CookieError
except ImportError: #pragma NO COVER Python >= 3.0
    from http.cookies import SimpleCookie
    from http.cookies import CookieError
 
def REQUEST_METHOD(environ):
    return environ['REQUEST_METHOD']
 
def CONTENT_TYPE(environ):
    return environ['CONTENT_TYPE']
 
def USER_AGENT(environ):
    return environ.get('HTTP_USER_AGENT')
 
def AUTHORIZATION(environ):
    return environ.get('HTTP_AUTHORIZATION', '')
 
def get_cookies(environ):
    header = environ.get('HTTP_COOKIE', '')
    if environ.has_key('paste.cookies'):
        cookies, check_header = environ['paste.cookies']
        if check_header == header:
            return cookies
    cookies = SimpleCookie()
    try:
        cookies.load(header)
    except CookieError:
        pass
    environ['paste.cookies'] = (cookies, header)
    return cookies
 
def construct_url(environ):
    return wsgiref.util.request_uri(environ)
 
def header_value(environ, key):
    headers = wsgiref.headers.Headers(environ)
    values = headers.get(key)
    if not values:
        return ""
    if isinstance(values, list):
        return ",".join(values)
    else:
        return values