Django Rest Framework自定义响应消息

用户名

我对Django Rest Framework响应消息有两个问题

1。

使用generics.ListCreateAPIView或时RetrieveDestroyAPIView,通常返回资源

例如,使用POST方法调用/ map /,结果将类似于一个对象:

{
    "x_axis": "23",
    "y_axis": "25",
    "map_id": 1,
}

我想知道可以将此消息编辑为以下自定义消息吗?

{"Success":"msg blablabla"}

2。

使用时serializers.ValidationError如果使用,我可以写我的自定义消息raise serializers.ValidationError("map_id does not exist")。响应消息将是

{"map_id":["map_id does not exist"]}

我可以像下面这样将这部分编辑为自定义吗?

{"FAIL":"map_id does not exist"}

我想知道这一点,因为前端不希望使用这种格式,他们喜欢:

{"Success":"msg blablabla"}
{"Fail":"msg blablabla"}
{"USERNAME_DUPLICATE":1001}
{"FIELD_REQUIRED":1002}

这样他们可以更方便地告诉用户操作错误的原因吗?

请不要属于

1在视图上覆盖create方法,并放置如下内容:

def create(self, request, *args, **kwargs):
        serializer = self.get_serializer(data=request.data)
        serializer.is_valid(raise_exception=True)
        self.perform_create(serializer)
        headers = self.get_success_headers(serializer.data)
        return Response({"Success": "msb blablabla"}, status=status.HTTP_201_CREATED, headers=headers)

2在上面的代码中,如果序列化程序无效,请更改raise_exceptionFalse返回任意值。IE:

def create(self, request, *args, **kwargs):
        serializer = self.get_serializer(data=request.data)
        if not serializer.is_valid(raise_exception=False):
            return Response({"Fail": "blablal", status=status.HTTP_400_BAD_REQUEST)

        self.perform_create(serializer)
        headers = self.get_success_headers(serializer.data)
        return Response({"Success": "msb blablabla"}, status=status.HTTP_201_CREATED, headers=headers)

您正在使用CBV,因此可以创建扩展DRF类和DRY的自定义泛型类

但是,我要说的是您不应该在响应中添加“成功”或“失败” ...如果http代码是2xx,则用户会知道没问题;如果请求有问题,则为4xx;如果请求为问题,则为5xx。是您的代码(或服务器)上的错误,您无需在响应正文中重复该信息,只需使用HTTP状态代码

希望这可以帮助

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Django Rest Framework 自定义错误消息

来自分类Dev

Django Rest Framework自定义端点

来自分类Dev

自定义字段Django Rest Framework

来自分类Dev

Django Rest Framework的自定义例外

来自分类Dev

Django Rest Framework:如何在GET请求的响应中添加自定义字段?

来自分类Dev

在Django Rest Framework中向JSON响应添加多个模型和自定义字段

来自分类Dev

Django Rest Framework:如何在GET请求的响应中添加自定义字段?

来自分类Dev

Django Rest Framework-如何为所有ModelSerializer字段创建自定义错误消息?

来自分类Dev

Django Rest Framework序列化程序中的自定义错误消息

来自分类Dev

Django Rest Framework如何自定义ListAPIView

来自分类Dev

Django Rest Framework中的Viewset'create'自定义赋值

来自分类Dev

Django Rest Framework自定义验证错误

来自分类Dev

Django REST Framework-不评估自定义权限

来自分类Dev

Django Rest Framework-按自定义字段过滤

来自分类Dev

Django Rest Framework自定义令牌认证

来自分类Dev

自定义 NotFound 异常 --- Django REST Framework

来自分类Dev

使用 Django Rest Framework 的自定义 JSON 回调

来自分类Dev

Django REST自定义错误

来自分类Dev

使用Django Rest框架序列化自定义数据类型并返回响应

来自分类Dev

在Django rest框架中创建用户后的自定义json响应

来自分类Dev

django rest框架perform_update或post_save返回自定义响应

来自分类Dev

如何自定义Django rest框架中的[未提供身份验证凭据]错误消息

来自分类Dev

Django Rest Framework:如何在rest_framework.FileField的自定义书面验证器中访问文件的大小?

来自分类Dev

Django Rest Framework:如何在rest_framework.FileField的自定义书面验证器中访问文件的大小?

来自分类Dev

如何在Django REST Framework中返回自定义JSON

来自分类Dev

如何自定义Django Rest Framework序列化器输出?

来自分类Dev

如何在Django Rest Framework中创建自定义JSON有效负载结构?

来自分类Dev

如何在Django Rest Framework中使用自定义令牌模型

来自分类Dev

如何在Django-Rest-Framework ViewSet中获取自定义列表视图

Related 相关文章

  1. 1

    Django Rest Framework 自定义错误消息

  2. 2

    Django Rest Framework自定义端点

  3. 3

    自定义字段Django Rest Framework

  4. 4

    Django Rest Framework的自定义例外

  5. 5

    Django Rest Framework:如何在GET请求的响应中添加自定义字段?

  6. 6

    在Django Rest Framework中向JSON响应添加多个模型和自定义字段

  7. 7

    Django Rest Framework:如何在GET请求的响应中添加自定义字段?

  8. 8

    Django Rest Framework-如何为所有ModelSerializer字段创建自定义错误消息?

  9. 9

    Django Rest Framework序列化程序中的自定义错误消息

  10. 10

    Django Rest Framework如何自定义ListAPIView

  11. 11

    Django Rest Framework中的Viewset'create'自定义赋值

  12. 12

    Django Rest Framework自定义验证错误

  13. 13

    Django REST Framework-不评估自定义权限

  14. 14

    Django Rest Framework-按自定义字段过滤

  15. 15

    Django Rest Framework自定义令牌认证

  16. 16

    自定义 NotFound 异常 --- Django REST Framework

  17. 17

    使用 Django Rest Framework 的自定义 JSON 回调

  18. 18

    Django REST自定义错误

  19. 19

    使用Django Rest框架序列化自定义数据类型并返回响应

  20. 20

    在Django rest框架中创建用户后的自定义json响应

  21. 21

    django rest框架perform_update或post_save返回自定义响应

  22. 22

    如何自定义Django rest框架中的[未提供身份验证凭据]错误消息

  23. 23

    Django Rest Framework:如何在rest_framework.FileField的自定义书面验证器中访问文件的大小?

  24. 24

    Django Rest Framework:如何在rest_framework.FileField的自定义书面验证器中访问文件的大小?

  25. 25

    如何在Django REST Framework中返回自定义JSON

  26. 26

    如何自定义Django Rest Framework序列化器输出?

  27. 27

    如何在Django Rest Framework中创建自定义JSON有效负载结构?

  28. 28

    如何在Django Rest Framework中使用自定义令牌模型

  29. 29

    如何在Django-Rest-Framework ViewSet中获取自定义列表视图

热门标签

归档