一.request對象
詳細信息能夠查閱django官方文檔html
共有五種請求相關的經常使用值python
request.path_info 返回用戶訪問的url不包括域名 request.method 請求中使用的HTTP方法的字符串表示,全大寫 request.GET 包含全部HTTP GET參數的類字典對象(request.GET.dict()) request.POST 包含全部HTTP POST參數的類字典對(request.POST.dict()) request.body 整個請求體, byte類型 request.POST的數據就是從body裏面提取到的
-
request.schemedjango
表示請求方案(http或https 一般)的字符串。cookie
-
request.bodysession
原始http請求體, 也能夠使用相似的方法 request.read()app
-
request.path_infopost
url的路徑信息部分編碼
-
request.methodurl
請求中使用的http請求方法spa
if request.method == 'GET': pass elif request.method == 'POST': pass
-
request.encoding
當前表單提交數據的編碼,能夠寫入這個屬性更改訪問表單數據時使用的編碼,任何後續屬性訪問都將使用這個編碼
-
request.content_type
標識請求的MIME類型的字符串,從CONTENT_TYPE標頭解析
-
request.content_params
content_type標題中包含的鍵/值參數字典
-
request.GET
一個包含http get請求參數的字典對象
-
request.POST
包含http post請求參數的字典
-
request.COOKIES
一個包含全部cookie信息的字典, key,value都是字符串類型
-
request.FILES
一個包含全部上傳文件的相似字典的對象, 每個key都是
<input type='file' name=「」>
標籤中的name,每一個value都是一個上傳的文件,只有當請求方法爲POST且向請求發送的<form>
具備enctype="multipart/form-data"
時,文件纔會包含數據。不然,文件將是一個相似於字典的空白對象。 -
request.META
一個包含全部http請求投的字典
CONTENT_LENGTH – 請求體長度(string). CONTENT_TYPE – The MIME type of the request body. HTTP_ACCEPT – Acceptable content types for the response. HTTP_ACCEPT_ENCODING – Acceptable encodings for the response. HTTP_ACCEPT_LANGUAGE – Acceptable languages for the response. HTTP_HOST – The HTTP Host header sent by the client. HTTP_REFERER – The referring page, if any. HTTP_USER_AGENT – The client’s user-agent string. QUERY_STRING – The query string, as a single (unparsed) string. REMOTE_ADDR – The IP address of the client. REMOTE_HOST – The hostname of the client. REMOTE_USER – The user authenticated by the Web server, if any. REQUEST_METHOD – A string such as "GET" or "POST". SERVER_NAME – The hostname of the server. SERVER_PORT – The port of the server (as a string).
django自己沒有設置但能夠設置的屬性
request.current_app # 模板語言中將使用其值做爲current_app參數來reverse()。 request.urlconf # 用做當前請求的根URLconf,覆蓋ROOT_URLCONF設置
經過中間件設置的屬性
request.session # SessionMiddleware request.site # CurrentSiteMiddleware request.user # AuthenticationMiddleware
二.response對象
引入方式
from django.http import HttpResponse
使用
1.傳遞字符串
response = HttpResponse("OK!") response = HttpResponse("OK!", content_type="text/plain")
2.設置或刪除響應頭信息
response = HttpResponse() response["Content-Type"] = "text/html"; charset='UTF-8'
3.屬性
HttpResponse.content:響應內容 HttpResponse.charset:響應內容的編碼 HttpResponse.status_code:響應的狀態碼