django - Django Rest Framework + Postman + JSON 解析错误
问题描述
我创建了一个 Django Api。我使用 rest_framework.generics.CreateAPIView 发布。它在默认浏览器中运行良好。但是当我使用 Postman 时,它会引发错误。
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)"
解决方案
问题是您用作form-data
输入,您应该使用它application/json
。
但是,您也可以修复项目的设置文件以接受表单数据。您需要添加FormParser
到DEFAULT_PARSER_CLASSES
您项目的settings.py
. 它应该如下所示:
REST_FRAMEWORK = {
'DEFAULT_PARSER_CLASSES': (
'rest_framework.parsers.JSONParser',
'rest_framework.parsers.FormParser',
)
}
推荐阅读
- java - 在thymeleaf中获取java对象
- azure - 主机串行端口转发到 Azure VM 客户端
- c - C 指针(总是)是否以有效的地址存储器开头?
- python - 使用python检查数据库连接是否繁忙
- javascript - 为联系表 7 复选框选项创建 id
- python - Celery:运行多个异步子任务导致“从不调用 results.get()”错误
- javascript - 当组中的一个复选框被选中时,禁用并取消选中所有其他复选框
- android-studio - 我的安卓工作室打不开。它似乎开始了一秒钟
- ruby-on-rails - Google Places API(添加 API 密钥)问题
- c# - 导航页 + 轮播视图。错误:无法激活实例