JSONDecodeError,在 Django 中使用 json.loads 时

Posted

技术标签:

【中文标题】JSONDecodeError,在 Django 中使用 json.loads 时【英文标题】:JSONDecodeError, when use json.loads in Django 【发布时间】:2018-05-13 06:44:48 【问题描述】:

在 Django 中使用 json.loads 时出现 JSONDecodeError。

发布数据

(b'csrfmiddlewaretoken=ikpUI4vMMbYivTby6FUkXRGNXisF6Cgq5eRnYvqoxRoyfAkwiP5GlsBj' b'jVlh3Va4&pergunta%5B1%5D%5Bitem%5D%5B1%5D=&pergunta%5B1%5D%5Bitem%5D%5B2%5D=' b'&pergunta%5B2%5D%5Bitem%5D%5B3%5D=&pergunta%5B2%5D%5Bitem%5D%5B4%5D=&pergunt' b'a%5B2%5D%5Bitem%5D%5B5%5D=&pergunta%5B2%5D%5Bitem%5D%5B6%5D=')

def post(self, request):

    data = json.loads(request.body)
    pprint(data)
    return HttpResponse(data)

输出错误

JSONDecodeError at /

请求方法:POST 请求 URL:http://localhost:8000/rma/Django 版本:1.11.7 异常类型:JSONDecodeError 异常值: 期望值:第 1 行第 1 列(字符 0)异常 位置:/usr/local/Cellar/python3/3.6.2/Frameworks/Python.framework/Versions/3.6/lib/python3.6/json/decoder.py 在 raw_decode,第 357 行 Python 可执行文件:/Users/marcelowanderley/Python-Compare/bin/python Python 版本:3.6.2

【问题讨论】:

Trying to parse `request.body` from POST in Django的可能重复 嗨,萨滕德拉。是不同的。我的代码在执行 JSON DECODER 时产生错误。即使那样我也尝试使用这篇文章的格式,但没有成功显示相同的错误。谢谢。 request.body的内容是什么? 嗨,阿拉斯代尔。一个简单的 POST 表单。谢谢。 已通过 request.POST.dict() 解决。非常感谢。 【参考方案1】:

正如@marcelo.delta 所说,对我来说也工作过......

request.POST.dict()

【讨论】:

以上是关于JSONDecodeError,在 Django 中使用 json.loads 时的主要内容,如果未能解决你的问题,请参考以下文章

Python/Django 请求 JSONDecodeError:期望值:第 1 行第 1 列(字符 0)

在 Jupyter Notebook 上获取 JsonDecodeError

PythonAnywhere 上的 JSONDecodeError

yfinance 不工作 - 接收 json.decoder.JSONDecodeError

JSONDecodeError:期望值

JSONDecodeError:加载 tf.Keras 模型时的期望值