djangorest接受post
时间: 2023-07-11 12:51:11 浏览: 106
在 Django REST framework 中,可以使用 DRF 的视图类来接受 POST 请求。一般来说,你需要继承 DRF 提供的 APIView,然后在其中实现 post() 方法来处理 POST 请求。下面是一个示例代码:
```python
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework import status
class MyView(APIView):
def post(self, request):
# 从请求体中获取数据
data = request.data
# 处理数据
result = do_something(data)
# 返回响应
return Response({"result": result}, status=status.HTTP_200_OK)
```
在这个示例中,我们定义了一个名为 MyView 的视图类,它继承自 DRF 的 APIView。我们在其中实现了 post() 方法,用于处理 POST 请求。在 post() 方法中,我们使用 request.data 获取请求体中的数据,然后对数据进行处理,并将处理结果封装成 JSON 格式的响应返回给客户端。
需要注意的是,DRF 的 Request 对象和 Django 的 HttpRequest 对象略有不同,DRF 的 Request 对象可以自动解析请求体中的数据,并以 Python 数据类型的形式提供给视图函数。如果你想要使用 Django 的 HttpRequest 对象,可以通过 request._request 获取到它。
除了 APIView,DRF 还提供了很多其他的视图类,比如 GenericAPIView、ViewSet 等,你可以根据自己的实际情况选择适合的视图类来处理 POST 请求。
阅读全文