【问题标题】:Django simplejson errorDjango simplejson错误
【发布时间】:2011-09-21 16:31:08
【问题描述】:

我正在尝试使用 simplejson 来解析 JSON 字符串。出于某种原因,当我使用 simplejson.loads 时,我收到以下错误:

ERROR:root:Exception in request:
Traceback (most recent call last):
File "C:\django\lokus_web_new\django\core\handlers\base.py", line 111, in get_
response
response = callback(request, *callback_args, **callback_kwargs)
File "C:\django\lokus_web_new\mobile\views.py", line 13, in entry_ajax
test = simplejson.loads(entry_param)
File "C:\Program Files (x86)\Google\google_appengine\lib\simplejson\simplejson
\__init__.py", line 388, in loads
return _default_decoder.decode(s)
File "C:\Program Files (x86)\Google\google_appengine\lib\simplejson\simplejson
\decoder.py", line 402, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "C:\Program Files (x86)\Google\google_appengine\lib\simplejson\simplejson
\decoder.py", line 420, in raw_decode
raise JSONDecodeError("No JSON object could be decoded", s, idx)
JSONDecodeError: No JSON object could be decoded: line 1 column 0 (char 0)
INFO:root:"POST /entry_ajax/ HTTP/1.1" 500 -

JSON 字符串是由原生 javscript JSON.stringify 函数生成的,如下:

{'type':'basic','id':'156','payload':{'text':'asd'}}

以下是视图的代码:

    def entry_ajax(request):
        entry_param = str(request.POST)
        test = simplejson.loads(entry_param)
        return HttpResponse(test['type'])  

有什么想法吗?

【问题讨论】:

    标签: python django simplejson


    【解决方案1】:

    这不是一个有效的 JSON 字符串。使用双引号:

    {"type":"basic","id":"156","payload":{"text":"asd"}}
    

    【讨论】:

    • 而我几乎被逼疯的时间归结为双引号。谢谢,解决了。
    猜你喜欢
    • 2012-05-17
    • 1970-01-01
    • 1970-01-01
    • 2013-03-10
    • 2012-06-12
    • 2011-12-08
    • 1970-01-01
    • 2011-07-31
    • 1970-01-01
    相关资源
    最近更新 更多