當視圖中發生未處理的異常時,Django默認返回HTML錯誤模板。如果請求有一個「Accept:'application/json'」標題(但返回通常的HTML),我想返回一個JSON響應。我該怎麼做?Django:取決於Accept頭的條件500響應?
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. HTTP請求結果的不同編碼取決於Accept標頭
- 3. WithFormat閉包不發送基於ACCEPT頭的響應
- 4. 取決於條件
- 5. 取決於條件
- 6. 取決於JSON響應採取輸入
- 7. 批處理文件有條件,取決於用戶對VBScript的響應MsgBox
- 8. 從Flask獲取所有「Accept」頭文件
- 9. Row_number()取決於條件
- 10. 增量取決於條件
- 11. preventDefault取決於Ajax響應的鏈接
- 12. 條件SMS響應的Django/Twilio
- 13. Django http響應代碼500錯誤
- 14. django-rest-framework raise AuthencationFailed cause 500響應
- 15. django rest框架,在ViewSet中額外的檢查和保存並返回不同的響應取決於條件
- 16. Progress Openedge條款取決於條件
- 17. 如何在不使用Internet的情況下檢索(獲取)響應頭(Accept-Language)?
- 18. 寬度取決於響應類
- 19. ServiceStack忽略Accept頭文件
- 20. 基於Accept頭的Spring MVC - @ExceptionHandler
- 21. 基於accept頭的ZF2返回格式
- 22. 使用accept頭
- 23. 獲取index.html的響應頭
- 24. MySQL的語法取決於條件
- 25. 顯示取決於條件的JSF值
- 26. 替換NA取決於條件的值
- 27. Apache:有條件的SSLCertificateFile取決於域?
- 28. 給予TD的bgcolor取決於條件
- 29. jQuery Mobile的 - 這取決於條件
- 30. 有條件的contextMenus取決於網站