Странная проблема.В качестве задания я должен принимать только запросы с данными {'title': 'some movie title'}.На локальном хосте мой код работает нормально.На Heroku данные всегда признаются неверными.views.py:
class MovieViewSet(viewsets.ModelViewSet):
queryset = Movie.objects.all()
serializer_class = MovieSerializer
def create(self, request, *args, **kwargs):
print("Data of the post request for debug:")
print(request.data)
title = request.data.get('title')
if not title:
return Response({'Error': "Body should be {'title':'The title of the Movie'}"}, status=status.HTTP_400_BAD_REQUEST)
Так, например, запрос с содержимым {'title': 'Властелин колец'} возвращает неверную ошибку тела.Пробовал с браузером (сайт django api), curl и некоторым генератором веб-запросов.Локально в порядке, на Heroku - неверный запрос.
Итак, я напечатал его на Heroku, и вот что я получил:
<QueryDict: {'_content_type': ['application/json'], '_content': ['{\r\n "title": "snatch"\r\n}']}>
Очевидно, что Heroku добавляет некоторые символы пробела к полученным запросам.Есть идеи, почему это происходит?