Django возвращает шаблон ошибки HTML по умолчанию, когда необработанное исключение происходит в представлении. Я хотел бы вернуть ответ JSON вместо этого, если в запросе был заголовок «Accept: 'application/json» (но в противном случае возвращался обычный HTML). Как я могу это сделать?Django: условный ответ 500 в зависимости от заголовка Accept?
4
A
ответ
1
Вы можете указать свою собственную функцию просмотра 500, в которой вы должны иметь возможность соответствующим образом изменять ответ. См https://docs.djangoproject.com/en/dev/topics/http/urls/#handler500
2
Изменение обработчика handler500 в urls.py:
handler500 = 'application_name.views.error_500'
Определить вид функции:
def error_500(request):
# check request header
return HttpResponse(json.dumps(retval), mimetype='application/json')
Смежные вопросы
- 1. Различные кодировки результата запроса HTTP, в зависимости от заголовка Accept
- 2. Условный ответ SMS с Django/Twilio
- 3. Условный SELECT в зависимости от набора правил
- 4. Ответ от заголовка мыла
- 5. значение суммы в зависимости от заголовка заголовка
- 6. Добавление заголовка Accept весной
- 7. 500 Ответ от приложения Heroku
- 8. Условный метод в зависимости от атрибута класса
- 9. Условный HTML класс в зависимости от страницы
- 10. withFormat закрытие не отправляет ответ на основе заголовка ACCEPT
- 11. Применение заголовка Accept в javascript
- 12. Ответ API-интерфейса Python Django Mandrill 500
- 13. Условный рендеринг с рельсами в зависимости от среды
- 14. Условный ответ с ASP.NET Webforms
- 15. REST Ответ службы на основе параметра accept
- 16. Excel Pivot в зависимости от значений заголовка
- 17. Элемент управления в зависимости от длины заголовка
- 18. Цвет фона заголовка в зависимости от объекта
- 19. MySQL Условный ответ столбца
- 20. Нет заголовка Content-Disposition в ответ от механизации
- 21. Django: избавление от круговой зависимости
- 22. Поле заголовка Accept-Datetime в HTTP
- 23. Как обойти проверку заголовка Accept в IIS?
- 24. Условный в Rails частичный в зависимости от контекстной страницы?
- 25. Условный order_by в зависимости от данных в Sunspot
- 26. ASP.NET 5 Игнорирование заголовка Accept xml
- 27. Какова функция HTTP-заголовка «Vary: Accept»?
- 28. Условный ответ, хотя реализован ICallbackEventHandler
- 29. Как выбрать тип контента из заголовка HTTP Accept в PHP
- 30. HTTP-ответ на неприемлемый заголовок Accept