Мой сервер, размещенный на Heroku, ведет себя очень странно, и я не могу найти, откуда он идет, после нескольких часов расследования ...
Я использую Django Rest Framework, и в основном мой API возвращает ответ 204например, когда ничего не найдено:
@action(detail=False)
def scan(self, request, pk=None, **kwargs):
store_id = self.kwargs['store_pk']
ean = self.request.query_params.get('ean')
queryset = ItemStore.objects.raw("query", [store_id, ean])
if queryset:
serializer = ItemStoreSerializer(queryset[0], many=False)
return Response(serializer.data)
else:
return Response({'message': 'Aucun résultat'}, status=status.HTTP_204_NO_CONTENT)
Вот ответ, который я получаю от Почтальона:
Localhost (Local)
- Содержание тела
- Время: 262 мс
Heroku (Prod)
- Нет содержимого тела
- Время: 60488 мс
Как видите, сервер Heroku не работает.Не отправляю никакого ответа, это происходит только с 204, если я переключусь на 200 на коде, то это будет работать как ожидалось.Я предполагаю, что Heroku использует какой-то тайм-аут, установленный на 60 секунд, но я понятия не имею, где его найти и как его исправить, поэтому любая помощь будет высоко оценена!