node.js
から twitter の userstream を扱うのには、ntwitter
は挙動がバギーなので user-stream
を使っている。garbage
イベントを吐きまくっていた。当該部分を読んでみると_
try {
//try parse & emit
buffer = JSON.parse(buffer);
parsed = true;
} catch(e) {
stream.emit('garbage', buffer);
}
JSON.parse
に失敗したら garbage
を吐くようになってる。catch
節で buffer
をダンプしてみると確かにjsonデータがぶつ切れになっていて、そりゃあパースに失敗するよなあ、という感じ。garbage
が発火しなくて泣ける。