request和response
一、request,一种内置属性,包含了各种请求
-method
-path
-GET:类字典结构;一个key允许对应多个值(一个是get,多个是getlist)
-POST:与GET一致
-META:各种客户端元信息;REMOTE_ADDR远端访问IP
二、response
一般分为两种,HttpResponse和JsonResponse
1.HttpResponse
-包含的属性:content:返回的内容
charset:编码格式
status_code:响应状态码(200,3XX,404,5XX)
用于欺骗爬虫。即使设置了状态码为404,页面也能正常显示
content-type:MIME类型
MIME:
作用:指定传输数据使用那种形式打开
格式:大类型/小类型,image/png
-包含的方法:write('XXX'):直接写出文本
flush():清空缓冲区
set_cookie(key, value='XXX', max_age=None, exprise=None):设置cookie
delete_cookie(key):删除cookie
-重定向:HttpResponseRedirect(HttpResponse子类)
自动返回到其他页面
2.JsonResponse
用于前后端分离或进行批量操作时
继承自HttpResponse。返回json数据的请求,通常用在异步请求上
以json形式返回数据,重写了HttpResponse的__init__,序列化json数据,指定content_type为application/json
JsonResponse接收的数据为字典
-Json
两种数据:JsonObject、JsonArray
(1)JsonObject:字典数据
(2)JsonArray:列表数据
(3)JsonObject和JsonArray可以互相嵌套
(4)传递给移动端或Ajax(前后端分离、DRF框架)时使用