0

バックエンドのネットモジュールとフロントエンドのフラッシュでnode.jsを使用しています。json形式でオブジェクトを渡したい。すべてのデータがバックエンドに到着したことをどのようにして知ることができるので、JSON.parseを実行できますか?

私のアクションスクリプト:

var obj = new Object();
obj.msg = "I want pizza";
xmlSocket.send(JSON.encode(obj));

私のJavaScript:

    socket.on("data", function(data){
        var msg = JSON.parse(data.toString());

        var i = 0;
        while(i < clientData.length){

            var client = clientData[i];
            if(client.writable){
                client.write(msg.msg, 'utf8');
            }
            i++;    
        }

});

現時点ではエラーが発生していますが、オブジェクト全体が表示されるため、これと関係があるかどうかはわかりません。

undefined:1
{"msg":"I want pizza"}
                      ^
SyntaxError: Unexpected token
4

1 に答える 1

0

データがいつ終了したかを知るには、長さを指定する何かを前に追加するか、データが終了したことを示す何かを最後に追加する必要があります。したがって、JSONの前に長さを配置するか、各JSONオブジェクトの後に改行を配置します。

また:何JSON.encodeですか?私は知っているだけJSON.stringifyです。

于 2013-02-23T17:23:01.017 に答える