2

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を介して送信された区切り文字を削除するためにあります。

4

1 に答える 1

1
import traceback
try:
    d = json.loads(data[data.index('{'):-1])
except:
    traceback.print_exc()
else:
    print(d)

このようにして、データ文字列の辞書部分のみがjson.loads()に解析されます。

于 2011-07-16T02:36:42.703 に答える