django系列3.4-- request對象和response對象(未完待續)

一.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:響應的狀態碼
相關文章
相關標籤/搜索