Spaces:
Sleeping
Sleeping
| class HTTPError(Exception): | |
| status_code:int = None | |
| description:str = None | |
| def __init__(self, status_code, description): | |
| self.status_code = status_code | |
| self.description = description | |
| super().__init__(self.status_code, self.description) | |
| error_messages = { | |
| 400: 'Invalid request.', | |
| 401: 'File code is required to download the file.', | |
| 403: 'Invalid file code.', | |
| 404: 'File not found.', | |
| 500: 'Internal server error.' | |
| } | |
| async def invalid_request(_): | |
| return 'Invalid request.', 400 | |
| async def not_found(_): | |
| return 'Resource not found.', 404 | |
| async def invalid_method(_): | |
| return 'Invalid request method.', 405 | |
| async def http_error(error: HTTPError): | |
| error_message = error_messages.get(error.status_code) | |
| return error.description or error_message, error.status_code | |
| def abort(status_code: int = 500, description: str = None): | |
| raise HTTPError(status_code, description) | |