web/request.py
changeset 9549 a1f94c2d2a39
parent 9469 032825bbacab
child 9561 3bdf85279c67
equal deleted inserted replaced
9548:be001628edad 9549:a1f94c2d2a39
    87     """abstract HTTP request, should be extended according to the HTTP backend
    87     """abstract HTTP request, should be extended according to the HTTP backend
    88     Immutable attributes that describe the received query and generic configuration
    88     Immutable attributes that describe the received query and generic configuration
    89     """
    89     """
    90     ajax_request = False # to be set to True by ajax controllers
    90     ajax_request = False # to be set to True by ajax controllers
    91 
    91 
    92     def __init__(self, vreg, https=False, form=None, headers={}):
    92     def __init__(self, vreg, https=False, form=None, headers=None):
    93         """
    93         """
    94         :vreg: Vregistry,
    94         :vreg: Vregistry,
    95         :https: boolean, s this a https request
    95         :https: boolean, s this a https request
    96         :form: Forms value
    96         :form: Forms value
       
    97         :headers: dict, request header
    97         """
    98         """
    98         super(_CubicWebRequestBase, self).__init__(vreg)
    99         super(_CubicWebRequestBase, self).__init__(vreg)
    99         #: (Boolean) Is this an https request.
   100         #: (Boolean) Is this an https request.
   100         self.https = https
   101         self.https = https
   101         #: User interface property (vary with https) (see :ref:`uiprops`)
   102         #: User interface property (vary with https) (see :ref:`uiprops`)
   112             self.datadir_url = vreg.config.datadir_url
   113             self.datadir_url = vreg.config.datadir_url
   113         #: raw html headers that can be added from any view
   114         #: raw html headers that can be added from any view
   114         self.html_headers = HTMLHead(self)
   115         self.html_headers = HTMLHead(self)
   115         #: received headers
   116         #: received headers
   116         self._headers_in = Headers()
   117         self._headers_in = Headers()
   117         for k, v in headers.iteritems():
   118         if headers is not None:
   118             self._headers_in.addRawHeader(k, v)
   119             for k, v in headers.iteritems():
       
   120                 self._headers_in.addRawHeader(k, v)
   119         #: form parameters
   121         #: form parameters
   120         self.setup_params(form)
   122         self.setup_params(form)
   121         #: received body
   123         #: received body
   122         self.content = StringIO()
   124         self.content = StringIO()
   123         # use header to set default language (may ne overwriten by user one later)
   125         # use header to set default language (may ne overwriten by user one later)