Django пользовательская обработка ошибок, когда указанный URL не совпадает ни с одним URL в ROOT_URLCONF - PullRequest
0 голосов
/ 22 января 2020

Как я могу отправить пользовательское сообщение об ошибке внешнему интерфейсу, когда конечная точка, исходящая из внешнего интерфейса, не совпадает ни с одним URL-адресом в ROOT_URLCONF в settings.py. В настоящее время, если URL-адрес не найден в ROOT_URLCONF, возникает ошибка 403 и в сообщении об ошибке появляется весь контент html.

Как отправить настраиваемое сообщение об ошибке в этом случае.

1 Ответ

0 голосов
/ 22 января 2020

У вас может быть пользовательская функция обработчика ошибок, возвращающая строку json

def not_found_request(request, exception, *args, **kwargs):
"""
Generic 404 error handler.
"""
data = {
    'error': 'The requested endpoint does not exist'
}
return JsonResponse(data, status=status.HTTP_404_NOT_FOUND)

Затем в вашем файле urlconf вы можете установить его на handler404 = 'not_found_request'

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...