【问题标题】:django - post data query dict is emptydjango - 发布数据查询字典为空
【发布时间】:2018-12-05 09:38:51
【问题描述】:

我使用邮递员应用程序并设置content-type : application/json 并使用post 方法 在正文中我选择"raw" and "JSON(application/json)" 在这一切之后,我输入了一个简单的 json:

{"token":"ghdfhldfigpd","text":"test Expense" ,"amount":10000}

但是当我调试我的 django 应用程序时:查询字典为空 see this picture

但是当我在表单数据部分输入我的数据时 我的应用程序有效并且发布查询字典不为空 应该是什么问题?

编辑:我看到数据进入正文但没有发布查询字典: this picture

【问题讨论】:

    标签: python json django rest post


    【解决方案1】:

    request.POST 仅适用于 application/x-www-form-urlencoded 数据。由于您使用的是 json,因此您应该使用 request.bodyjson.loads

    import json
    
    def my_view(request):
        data = json.loads(request.body.decode('utf-8'))
        ...
    

    【讨论】:

    • 为什么不知道更多?鉴于前端框架的流行,也许需要更新文档以反映这一点
    • @Sevenearths 在文档中添加警告是个好主意。为什么不创建一个工单,或者更好的是,起草一个补丁。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-04
    • 1970-01-01
    • 2020-07-16
    • 2014-09-01
    • 2015-11-28
    相关资源
    最近更新 更多