Django Rest Framework + Почтальон + ошибка разбора JSON - PullRequest
0 голосов
/ 06 мая 2018

Я создал Django Api. Я использовал rest_framework.generics.CreateAPIView для публикации. Это хорошо работает в браузере по умолчанию. Но когда я использую Почтальон, он выдает ошибку.

views.py

class AuthorCreateAPIView(CreateAPIView):
  queryset = Author.objects.all()
  serializer_class = AuthorCreateUpdateSerializer

serializers.py

class AuthorCreateUpdateSerializer(ModelSerializer):
  class Meta:
  model = Author
  fields = [
    'name',
    'biography',
  ]

Ошибка : "detail": "JSON parse error - Expecting value: line 1 column 1 (char 0)"

Postman view

1 Ответ

0 голосов
/ 06 мая 2018

Проблема в том, что вы использовали form-data в качестве ввода, вы должны использовать application/json вместо.

однако вы можете исправить файл настроек вашего проекта, чтобы принимать данные формы тоже. Вам нужно добавить FormParser к вашему DEFAULT_PARSER_CLASSES в settings.py вашего проекта. Это должно выглядеть так:

REST_FRAMEWORK = {
    'DEFAULT_PARSER_CLASSES': (
        'rest_framework.parsers.JSONParser',
        'rest_framework.parsers.FormParser',
    )
}
...