Exemple #1
0
 def request_handler(request: Request, response: Response):
     return response.status(200).json({
         "body": request.body,
         "id": request.id,
         "method": request.method,
         "query": request.query,
         "path": request.path
     })
Exemple #2
0
def handle_errors(request: Request, response: Response, next_layer: NextFunction):
    try:
        return next_layer()
    except Exception as exception:
        log_format: str = "%s Error Response (%s): %s %s --> status: %d | body: %s"
        req_id = request.id
        method = request.method
        path = request.path
        keys = dir(exception)
        body = dict()
        for key in keys:
            value = getattr(exception, key)
            if not key.startswith('__') and not callable(value):
                body[key] = value
        body['traceback'] = traceback.format_exc()
        body['message'] = getattr(exception, 'message', repr(exception))
        status_code = getattr(exception, 'status_code', 500)
        now = datetime.now().isoformat()
        logger.error(log_format, now, req_id, method, path, status_code, str(body))
        response.status(status_code)
        response.json(body)
        return
Exemple #3
0
    def __call__(self: 'Application', environ, start_response):
        self.current_layer: int = 0
        request = Request(environ)
        response = Response(start_response, request)

        def next_layer():
            if self.current_layer >= len(self.middlewares):
                return self.request_handler(request, response)
            layer = self.middlewares[self.current_layer]
            self.current_layer += 1
            return layer(request, response, next_layer)

        next_layer()
        yield response.body
        return response.body
 def request_handler(request: Request, response: Response):
     return response.status(201).json({"hello": True})
Exemple #5
0
def goobye_world(request: Request, response: Response):
    print("hello world")
    return response.json({"hola": "mundo"})
Exemple #6
0
 def handler(request: Request, response: Response):
     self.assertTrue(isinstance(request.body, dict))
     return response.json({})
Exemple #7
0
 def handler(request: Request, response: Response):
     self.assertEqual(len(request.body.keys()), 0)
     self.assertEqual(request.raw_body,
                      json.dumps(self.body).encode('utf-8'))
     return response.json({})
Exemple #8
0
 def request_handler(request: Request, response: Response):
     request.body['handler'] = True
     self.assertTrue(request.body['second'])
     return response.status(201).json(request.body)
Exemple #9
0
 def request_handler(request: Request, response: Response):
     return response.status(201).json(request.body)
Exemple #10
0
 def handler(request: Request, response: Response):
     body = dict()
     for (key, value) in request.headers.items():
         body[key] = value
     return response.json(body)
 def handler(request: Request, response: Response):
     self.assertTrue(isinstance(request.body, dict))
     self.assertEqual(request.body['fields']['field'], 'True')
     self.assertEqual(request.body['files']['file'].filename,
                      self.file.name)
     return response.json({})