【问题标题】:Django Rest Framework Not Returning Full JSONDjango Rest 框架不返回完整的 JSON
【发布时间】:2023-03-25 15:11:01
【问题描述】:

在使用 DRF 构建的 API 上执行 GET 请求时,我无法检索完整的 JSON 响应。如果我包含分页并检索 100 个结果,那么我会收到完整的 JSON 响应。如果我不使用分页,并且想检索几千个结果,那么服务器只会在看似随机的位置切断,并且不会返回完整的 JSON。例如,它可能返回 {"hi":"hel 而不是返回 {"hi":"hello"}。DRF 将其报告为 200 响应代码,因此它似乎执行正确。

我的视图代码如下:

class RepresentativeListView(generics.ListAPIView):
    queryset = models.Representative.objects.all()
    serializer_class = serializers.RepresentativeSerializer

我的序列化程序的代码如下所示:

class RepresentativeSerializer(serializers.ModelSerializer):
    class Meta:
        model = models.Representative
        fields = (
            'bioguide_id',
            'stats',
            'leadership_score',
            'ideology_score',
       )

有人能理解为什么没有完整的 JSON 响应吗?

【问题讨论】:

  • 嗨,有人找到解决方案了吗?

标签: django django-rest-framework


【解决方案1】:

这可能是您的 Apache / Nginx / 无论您使用什么网络服务器的问题。 如果应用程序没有及时响应,它可能会关闭连接。 检查您的 Web 服务器日志以及应用程序呈现响应所需的时间与服务器超时。

【讨论】:

  • 我使用的是 django 内置的本地服务器(python manage.py runserver)。每当发出请求时,即使它返回不完整的 JSON,它也会记录 200 状态代码。
猜你喜欢
  • 2017-08-21
  • 1970-01-01
  • 1970-01-01
  • 2020-03-27
  • 2014-10-16
  • 2021-08-14
  • 2016-06-27
  • 2015-05-28
  • 2016-05-03
相关资源
最近更新 更多