请求与响应
请求与响应
请求:HttpRequests objects
django把请求的元数据都封装到请求对象中。
常用属性:
path:请求页面的完整路径的字符串,不包括协议。
method:返回当前请求使用的http方法的字符串,他保证是大写。
#想要判断一个请求是get请求,还是post请求 if request.method=='GET': do something elif request.method=='POST': do something
encoding:当前请求数据使用的编码,默认为utf-8,一般为None,可以手动修改。
GET:一个类字典对象,包含了所有的get参数。
POST:一个类字典对象,包含了所有的post参数。
FILES:一个类字典对象,包含了所有的上传文件信息。
COOKIES:一个包含了cookies的字典,键值都是字符串。
session:一个可读可写的字典,键值都是字符串。
form表单:(html中的表单)
通过form收集表单数据,返回给后端。
form标签必须制定两个属性
action用于指定提交地址,不写或者为空,表示提交到当前页。
method 用于指定提交方式,默认使用GET。
get请求 幂等
post
一键多值
文件上传:
表单如果需要上传,文件必须设置参数,enctype=‘mutipart/form-data’
HttpResponse对象:
响应对象,需要手动创建。
我们编写的视图,负责实例化,填充和返回响应对象。
常用属性:
content:表示要返回的内容,字节类型
charset:编码方式
status code:响应状态码
content-type:指定输出的MIME类型
常用方法:
write(content):以文件的方式写入
set-cookie设置cookie
delete_cookie(key):删除指定cookie
常用子类:
HttpResponseRedirect:重定向,快捷方式redirect。
jsonResponse:返回json数据,创建时需要传入字典。
render()快捷方式。