1. 程式人生 > >Django框架——HttpResponse物件

Django框架——HttpResponse物件

目錄


1.HttpResponse

可通過HttpResponse構造響應物件:

HttpResponse(content=響應體, content_type=響應體資料型別, status=狀態碼)

響應頭可以直接將HttpResponse物件當做字典進行響應頭鍵值對的設定:

response = HttpResponse()
response['itcast'] = 'Python'  # 自定義響應頭Itcast, 值為Python

Django提供了一系列HttpResponse的子類,可以快速設定狀態碼:

HttpResponseRedirect 301
HttpResponsePermanentRedirect 302
HttpResponseNotModified 304
HttpResponseBadRequest 400
HttpResponseNotFound 404
HttpResponseForbidden 403
HttpResponseNotAllowed 405
HttpResponseGone 410
HttpResponseServerError 500

2.JsonResponse

JsonResponse來構造響應物件的作用:
(1)幫助我們將資料轉換為json字串
(2)設定響應頭Content-Type為application/json

用法:
return JsonResponse(dict,safe) (safe預設為True,保證可以將物件轉為json,如果為非字典物件,則報錯,可設定為False傳遞非字典物件)
例:

def response(request):
	 return JsonResponse({'city': 'beijing', 'subject': 'python'})

3.redirect重定向

return redirect(路徑)

4.reverse反解析

reverse可根據路由名稱返回路由路徑。
用法:

reverse(路由名稱)

如果未指明名稱空間,路由名稱:

namespace:reverse(name)

如果指明名稱空間,路由名稱:

namespace:reverse(namespace:name)