cubicweb/wsgi/request.py
changeset 11913 4516c3956d46
parent 11767 432f87a63057
child 12567 26744ad37953
equal deleted inserted replaced
11912:c9e6df20e5a4 11913:4516c3956d46
    67 
    67 
    68         headers_in = dict((normalize_header(k[5:]), v) for k, v in self.environ.items()
    68         headers_in = dict((normalize_header(k[5:]), v) for k, v in self.environ.items()
    69                           if k.startswith('HTTP_'))
    69                           if k.startswith('HTTP_'))
    70         if 'CONTENT_TYPE' in environ:
    70         if 'CONTENT_TYPE' in environ:
    71             headers_in['Content-Type'] = environ['CONTENT_TYPE']
    71             headers_in['Content-Type'] = environ['CONTENT_TYPE']
    72         https = self.is_secure()
       
    73         if self.path.startswith('/https/'):
       
    74             self.path = self.path[6:]
       
    75             self.environ['PATH_INFO'] = self.path
       
    76             https = True
       
    77 
    72 
    78         post, files = self.get_posted_data()
    73         post, files = self.get_posted_data()
    79 
    74 
    80         super(CubicWebWsgiRequest, self).__init__(vreg, https, post,
    75         super(CubicWebWsgiRequest, self).__init__(vreg, post,
    81                                                   headers= headers_in)
    76                                                   headers= headers_in)
    82         self.content = environ['wsgi.input']
    77         self.content = environ['wsgi.input']
    83         if files is not None:
    78         if files is not None:
    84             for key, part in files.iterallitems():
    79             for key, part in files.iterallitems():
    85                 self.form.setdefault(key, []).append((part.filename, part.file))
    80                 self.form.setdefault(key, []).append((part.filename, part.file))
   119 
   114 
   120         return path
   115         return path
   121 
   116 
   122     ## wsgi request helpers ###################################################
   117     ## wsgi request helpers ###################################################
   123 
   118 
   124     def is_secure(self):
       
   125         return self.environ['wsgi.url_scheme'] == 'https'
       
   126 
       
   127     def get_posted_data(self):
   119     def get_posted_data(self):
   128         # The WSGI spec says 'QUERY_STRING' may be absent.
   120         # The WSGI spec says 'QUERY_STRING' may be absent.
   129         post = parse_qs(self.environ.get('QUERY_STRING', ''))
   121         post = parse_qs(self.environ.get('QUERY_STRING', ''))
   130         files = None
   122         files = None
   131         if self.method == 'POST':
   123         if self.method == 'POST':