Lines Matching full:environ

29 def guess_scheme(environ):  argument
32 if environ.get("HTTPS") in ('yes','on','1'):
37 def application_uri(environ): argument
39 url = environ['wsgi.url_scheme']+'://'
42 if environ.get('HTTP_HOST'):
43 url += environ['HTTP_HOST']
45 url += environ['SERVER_NAME']
47 if environ['wsgi.url_scheme'] == 'https':
48 if environ['SERVER_PORT'] != '443':
49 url += ':' + environ['SERVER_PORT']
51 if environ['SERVER_PORT'] != '80':
52 url += ':' + environ['SERVER_PORT']
54 url += quote(environ.get('SCRIPT_NAME') or '/', encoding='latin1')
57 def request_uri(environ, include_query=True): argument
59 url = application_uri(environ)
61 path_info = quote(environ.get('PATH_INFO',''), safe='/;=,', encoding='latin1')
62 if not environ.get('SCRIPT_NAME'):
66 if include_query and environ.get('QUERY_STRING'):
67 url += '?' + environ['QUERY_STRING']
70 def shift_path_info(environ): argument
74 Note: 'environ' is modified in-place; use a copy if you need to keep
83 path_info = environ.get('PATH_INFO','')
92 script_name = environ.get('SCRIPT_NAME','')
99 environ['SCRIPT_NAME'] = script_name
100 environ['PATH_INFO'] = '/'.join(path_parts)
106 # an empty string in the environ.
111 def setup_testing_defaults(environ): argument
112 """Update 'environ' with trivial defaults for testing purposes
124 environ.setdefault('SERVER_NAME','127.0.0.1')
125 environ.setdefault('SERVER_PROTOCOL','HTTP/1.0')
127 environ.setdefault('HTTP_HOST',environ['SERVER_NAME'])
128 environ.setdefault('REQUEST_METHOD','GET')
130 if 'SCRIPT_NAME' not in environ and 'PATH_INFO' not in environ:
131 environ.setdefault('SCRIPT_NAME','')
132 environ.setdefault('PATH_INFO','/')
134 environ.setdefault('wsgi.version', (1,0))
135 environ.setdefault('wsgi.run_once', 0)
136 environ.setdefault('wsgi.multithread', 0)
137 environ.setdefault('wsgi.multiprocess', 0)
140 environ.setdefault('wsgi.input', BytesIO())
141 environ.setdefault('wsgi.errors', StringIO())
142 environ.setdefault('wsgi.url_scheme',guess_scheme(environ))
144 if environ['wsgi.url_scheme']=='http':
145 environ.setdefault('SERVER_PORT', '80')
146 elif environ['wsgi.url_scheme']=='https':
147 environ.setdefault('SERVER_PORT', '443')