【发布时间】:2010-07-26 17:46:17
【问题描述】:
我一直想弄清楚如何在 Python 中加载 JSON 对象。
我可以向服务器发送一个 JSON 字符串,但是它失败了。
这是我使用 JavaScript 通过 websocket 发送的内容:
ws.send('{"test":"test"}');
服务器收到它没有问题,但无法验证它:
{"test":"test"}
This is not a JSON object!
来自这段代码:
try:
data = data[:-1]
json.loads(data)
except ValueError:
print 'This is not a JSON object!'
else:
print ('JSON found!')
data = data[:-1] 用于剥离通过 websocket 发送的分隔符。
【问题讨论】:
-
您能否提供有关该错误的更多详细信息?像 data.__repr__() 和错误一样,被捕获。
-
我现在没有关于 __repr__(),这太神奇了:
'\x00{"test":"test"}'问题就在那里,显然也有一个起始字符,但你在控制台中看不到它。删除它修复它。不过,你能告诉我如何得到错误吗?我对 python 的错误处理方式很陌生,我似乎无法按原样打印出 ValueError。 -
我认为是“除了 ValueError,e:”。然后就可以“打印e”了。
-
\x00 可能是 websocket 协议框架分隔符的一部分。
标签: javascript python json websocket