一、request 到底是什么?
简单一句话:request 是前端传给后端的所有信息的集合。
可以把它理解成一个快递包裹:
- 里面有前端发过来的数据
- 有请求方式(GET/POST/PUT/DELETE)
- 有请求头(token、设备信息)
- 有客户端 IP、请求路径等
只要前端发起请求,Django 就会把所有内容打包成一个 request 对象,自动传给视图。
不管是函数视图还是 DRF 的 APIView,第一个参数永远是 request:
# 函数视图
def demo_view(request):
pass
# DRF 类视图
class DemoView(APIView):
def post(self, request):
pass
request 是前后端交互的入口,也是后端开发的起点。
二、request 最常用、最核心的属性
下面这些是做前后端分离开发时每天都在用的属性,建议直接记牢。
1. request.method —— 请求方式
作用:告诉后端,前端这次请求想干什么。
常见值:
GET:查询、获取数据(列表、详情、搜索)POST:提交、新增数据(登录、注册、上传)PUT:修改数据DELETE:删除数据
(上面是一些常用请求,并非所有请求)
示例:
if request.method == 'GET':
return Response({"msg": "查询操作"})
if request.method == 'POST':
return Response({"msg": "提交操作"})
2. request.data —— 接收前端 JSON 数据(最重要)
这是前后端分离、小程序开发必用的属性。
前端(小程序 / axios)传 JSON:

