code: def handle(self):
          
          body = None
          req = self.request
          res = self.response
          rou = self.router
          con = None
          start = time.time()
  
          try:
              con = self.create_controller()
              con.call = self
              self.controller = con
              if not self.quiet:
                  con.log_start(start)
  
              # the controller handle method will manipulate self.response, it first
              # tries to find a handle_HTTP_METHOD method, if it can't find that it
              # will default to the handle method (which is implemented on Controller).
              # method arguments are passed in so child classes can add decorators
              # just like the HTTP_METHOD that will actually handle the request
              controller_args, controller_kwargs = con.find_method_params()
              controller_method = getattr(con, "handle_{}".format(req.method), None)
              if not controller_method:
                  controller_method = getattr(con, "handle")
  
              if not self.quiet:
                  logger.debug("Using handle method: {}.{}".format(
                      con.__class__.__name__,
                      controller_method.__name__
                  ))
              controller_method(*controller_args, **controller_kwargs)
  
          except Exception as e:
              self.handle_error(e) # this will manipulate self.response
  
          finally:
              if res.code == 204:
                  res.headers.pop('Content-Type', None)
                  res.body = None # just to be sure since body could've been ""
  
              if con:
                  if not self.quiet:
                      con.log_stop(start)
  
          return res
docs: Called from the interface to actually handle the request.