def __call__(self, request): retval = self.HttpResponseObject() def start_response(status, headers): # Status is one of spyne.const.http status, reason = status.split(' ', 1) retval.status_code = int(status) for header, value in headers: retval[header] = value environ = request.META.copy() # FIXME: No idea what these two did. # They were commented out to fix compatibility issues with # Django-1.2.x # See http://github.com/arskom/spyne/issues/222. # If you don't override wsgi.input django and spyne will read # the same buffer twice. If django read whole buffer spyne # would hang waiting for extra request data. Use DjangoServer instead # of monkeypatching wsgi.inpu. #environ['wsgi.input'] = request #environ['wsgi.multithread'] = False response = WsgiApplication.__call__(self, environ, start_response) self.set_response(retval, response) return retval
def __call__(self, request): django_response = HttpResponse() def start_response(status, headers): status, reason = status.split(' ', 1) django_response.status_code = int(status) for header, value in headers: django_response[header] = value environ = request.META.copy() environ['wsgi.input'] = request environ['wsgi.multithread'] = False response = WsgiApplication.__call__(self, environ, start_response) #TODO: можно сказать, что это костыль, без него не работает. #Может быть когда то spyne научится делать это сам, как надо sopa клиенту qiwi data = (u"".join(response))\ .replace('tns:updateBillResult', 'updateBillResult') if self.debug_mode is None: self.debug_mode = bool(settings.DEBUG) if self.debug_mode: logger = logging.getLogger(LOGGER_NAME) logger.debug(u'soap response content: {0}'.format(data)) django_response.content = data if django_response.has_header('Content-Length'): django_response['Content-Length'] = len(data) return django_response
def __call__(self, request): pyramid_response = Response() def start_response(status, headers): status, reason = status.split(' ', 1) pyramid_response.status_int = int(status) pyramid_response.headers["Cache-Control"] = "no-cache, must-revalidate" pyramid_response.headers["Expires"] = "Sat, 26 Jul 1997 05:00:00 GMT" for header, value in headers: pyramid_response.headers[header] = value response = WsgiApplication.__call__(self, request, start_response) pyramid_response.body = "\n".join(response) return pyramid_response
def __call__(self, request): retval = Response() def start_response(status, headers): status, reason = status.split(' ', 1) retval.status_int = int(status) for header, value in headers: retval.headers[header] = value response = WsgiApplication.__call__(self, request, start_response) retval.body = "".join(response) return retval
def __call__(self, request): retval = self.HttpResponse def start_response(status, headers): status, reason = status.split(' ', 1) retval.status_code = int(status) for header, value in headers: retval[header] = value environ = request.META.copy() environ['wsgi.input'] = request environ['wsgi.multithread'] = False response = WsgiApplication.__call__(self, environ, start_response) self.set_response(self, retval, response) return retval
def __call__(self, request): django_response = HttpResponse() def start_response(status, headers): status, reason = status.split(' ', 1) django_response.status_code = int(status) for header, value in headers: django_response[header] = value environ = request.META.copy() environ['wsgi.input'] = request environ['wsgi.multithread'] = False response = WsgiApplication.__call__(self, environ, start_response) django_response.content = "\n".join(response) return django_response
def __call__(self, request): retval = self.HttpResponseObject() def start_response(status, headers): # Status is one of spyne.const.http status, reason = status.split(' ', 1) retval.status_code = int(status) for header, value in headers: retval[header] = value environ = request.META.copy() # FIXME: No idea what these two did. # They were commented out to fix compatibility issues with # Django-1.2.x # See http://github.com/arskom/spyne/issues/222. #environ['wsgi.input'] = request #environ['wsgi.multithread'] = False response = WsgiApplication.__call__(self, environ, start_response) self.set_response(retval, response) return retval