一、项目准备工作
二、HttpRequest对象
1.获取路径中的参数
如果想从URL中取值 http://127.0.0.1:8000/18/188/
方法:
应用中 urls.py
path('<car_id>/<good_id>/',views.Test),
视图中函数:参数的位置不能错
def Test(self,car_id,good_id):
dict = {
'car':car_id,
'good':good_id
}
return Response(dict)
2.查询字符串
http://ip:port/path/?key=value&key1=value1
?前 请求路径
?后 查询字符串
多个数据采用 & 拼接
获取到字符串
query_param = request.GET
order = query_param.get('order')
获取多个字符串
http://ip:port/path/?order=123&user=zpw&order=567
order = query_param.getlist('order') #能够获得123 和 567的值
3.请求体(body)中发送的数据
3.1 表单类型form data
前端发送的表单类型的请求体数据,可以通过request.POST获取
data = request.POST
3.2 json数据请求和接收
JSON是双引号
body = request.body
# body 结果 <class 'str'>
body_str = body.decode()
# JSON形式的字符串,可以转换为python的字典
body_dict = json.loads(body_str)
4.在http报文的头(head)中
常见的请求头如:
CONTENT_LENGTH
: 请求体的长度(以字节为单位)。CONTENT_TYPE
: 请求体的 MIME 类型。HTTP_ACCEPT
: 客户端可以接受的响应内容类型。HTTP_ACCEPT_ENCODING
: 客户端可以接受的编码方式列表。HTTP_ACCEPT_LANGUAGE
: 客户端的首选语言。