我无法在tshark JSon输出中指向对象

时间:2019-02-06 14:45:19

标签: node.js json tshark

我正在使用node.js进行编码,并使用tshark的子进程,并使我的程序将所有tshark输出作为事件读取。

我注意到,当我将tshark设置为以JSON输出时,它在JSON对象中输出了非常有条理的信息,但是我无法指向其中的任何对象。

使用JSON.stringify(data)返回一堆数字。有谁知道我如何在stdout中可靠地指向一个对象?

var spawn = require('child_process').spawn,
    ts = spawn('tshark',
               ['-i', '1', '-T', 'JSON', '-V']
              );

ts.stdout.on('data', function (data) {
    console.log('stdout: ' + data); // cannot point to objects here 
});

ts.stderr.on('data', function (data) {
    console.log('stderr: ' + data);
});

ts.on('exit', function (code) {
   console.log('child process exited with code ' + code);
});

每个收到的数据包都将具有_source属性,即使使用data._source我也无法指向它,它返回undefined。不太确定如何指向对象内的属性。

编辑:所以我知道了。它实际上是一个缓冲区,所以我将其转换为字符串,然后将其解析为可用的对象。

0 个答案:

没有答案