当前位置 : 主页 > 网页制作 > html >

04_HttpResponse对象及使用其设置cookie详解

来源:互联网 收集:自由互联 发布时间:2021-06-12
HttpResponse 对象 Django服务器接收到客户端发送过来的请求后,会将提交上来的这些数据封装成一 个 HttpRequest 对象传给视图函数。那么视图函数在处理完相关的逻辑后,也需要返回一个响

HttpResponse 对象

Django服务器接收到客户端发送过来的请求后,会将提交上来的这些数据封装成一
个 HttpRequest 对象传给视图函数。那么视图函数在处理完相关的逻辑后,也需要返回一个响应
给浏览器。而这个响应,我们必须返回 HttpResponseBase 或者他的子类的对象。
而 HttpResponse 则是 HttpResponseBase 用得最多的子类。那么接下来就来介绍一
下 HttpResponse 及其子类

1. 常用属性

  1. content:返回的内容。
  2. status_code:返回的HTTP响应状态码。
  3. content_type:返回的数据的MIME类型,默认为 text/html 。浏览器会根据这个属性,来显
    示数据。如果是 text/html ,那么就会解析这个字符串,如果 text/plain ,那么就会显示一
    个纯文本。常用的 Content-Type 如下:
    text/html(默认的,html文件)
    text/plain(纯文本)
    text/css(css文件)
    text/javascript(js文件)
    multipart/form-data(文件提交)
    application/json(json传输)
    application/xml(xml文件)
    分享图片

  4. 设置请求头: response[‘X-Access-Token‘] = ‘xxxx‘ 。

2. 常用方法

  1. init :使用页内容实例化HttpResponse对象
  2. write(content):以文件的方式写
  3. flush():以文件的方式输出缓存区
  4. set_cookie(key, value=‘‘, max_age=None, expires=None):设置Cookie
    key、value都是字符串类型
    max_age是一个整数,表示在指定秒数后过期
    expires是一个datetime或timedelta对象,会话将在这个指定的日期/时间过期,注意datetime和timedelta值只有在使用PickleSerializer时才可序列化
    如果max_age 和expires 都没有指定,则是 表示关闭浏览器就失效
    设置cookie
    获取cookie

  5. delete_cookie(key):删除指定的key的Cookie,如果key不存在则什么也不发生
    删除cookie

    注意: 注意:设置cookie值以及删除cookie值都是response对象的操作,而获取cookie是从request相应中获得的.

网友评论