Django-request的常见属性

瞧一瞧,看一看,Django时,获取Request的各个属性。

Request的常见属性

request.META

  • 返回一个python字典。它包含了所有的HTTP请求信息。如下代码:

    点击查看代码
    {   
        "ALLUSERSPROFILE": "C:ProgramData",
        "OS": "Windows_NT",
        "TERM_PROGRAM": "vscode",
        "LANG": "zh_CN.UTF-8",
        "SERVER_NAME": "activate.navicat.com",
        "SERVER_PORT": "8000",
        "SERVER_PROTOCOL": "HTTP/1.1",
        "REQUEST_METHOD": "GET",
        "PATH_INFO": "/devices/1/",
        "REMOTE_ADDR": "127.0.0.1",
        "CONTENT_TYPE": "application/json",
        "HTTP_USER_AGENT": "PostmanRuntime/7.28.4",
        "HTTP_HOST": "127.0.0.1:8000",
        "HTTP_ACCEPT_ENCODING": "gzip, deflate, br",
        "HTTP_COOKIE": "csrftoken=3tSxVJFqxtFq85GcbNlxLZxU5jOZtfFLL7gtG6huYTDkec6X6gsNvZilp8gn8c4N",
        "wsgi.url_scheme": "http",
        "CSRF_COOKIE": "3tSxVJFqxtFq85GcbNlxLZxU5jOZtfFLL7gtG6huYTDkec6X6gsNvZilp8gn8c4N"
        "其它":"............................."
    }
    

request.scheme

  • 返回其请求的方式,即 http 或者是 https

request.path

  • 返回请求的相对路径,如 /devices/
  • 获取完整路径(包括参数):HttpRequest.get_full_path()

request.encoding

  • 请求提交的数据的编码方式

request.session

  • 请求的session数据 request.session.key()

request.COOKIES

  • 请求的cookies数据 request.COOKIES['csrftoken']

  • 区别:cookies存储在客户端,而session存储在服务端
    简单的cookie 操作

    点击查看代码
    # 设置cookies
    response.set_cookie(key, values)
    # 设置加密cookies
    response.set_cookie(key, values, salt='加盐')
    # 获取cookie
    request.COOKIES.get(key)
    # 获取加密的cookie
    request.get_signed_cookie(key,salt="加盐")
    

request.method

  • 请求方式 GET/POST/PUT/DELETE等

request.body

request.data

  • 请求时传输的数据,与body相似,但是json格式

request.GET

  • get请求里url中或表单中附带的数据, 如:?token='dfadf'

request.POT

  • 表单中提交的数据
posted @ 2022-04-20 11:27    阅读(131)  评论(0编辑  收藏  举报