fanpei91 / torsniff

torsniff - a sniffer that sniffs torrents from BitTorrent network

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

运行test。出错

wangtubs opened this issue · comments

buffer.js:772
    throw new RangeError('Attempt to write outside buffer bounds');
    ^

RangeError: Attempt to write outside buffer bounds
    at Buffer.write (buffer.js:772:11)
    at fromString (buffer.js:238:26)
    at Function.Buffer.from (buffer.js:131:12)
    at new Buffer (buffer.js:112:17)
    at Function.encode.bytes (/usr/src/p2pspider/node_modules/bencode/lib/encode.js:45:17)
    at Function.encode.dict (/usr/src/p2pspider/node_modules/bencode/lib/encode.js:79:12)
    at Function.encode._encode (/usr/src/p2pspider/node_modules/bencode/lib/encode.js:33:18)
    at Object.encode (/usr/src/p2pspider/node_modules/bencode/lib/encode.js:9:10)
    at DHTSpider.sendKRPC (/usr/src/p2pspider/lib/dhtspider.js:27:23)
    at DHTSpider.sendFindNodeRequest (/usr/src/p2pspider/lib/dhtspider.js:52:10)
    at .<anonymous> (/usr/src/p2pspider/lib/dhtspider.js:57:14)
    at Array.forEach (native)
    at DHTSpider.joinDHTNetwork (/usr/src/p2pspider/lib/dhtspider.js:56:21)
    at .<anonymous> (/usr/src/p2pspider/lib/dhtspider.js:173:18)
    at Timeout.wrapper [as _onTimeout] (timers.js:417:11)
    at tryOnTimeout (timers.js:224:11)

请问如何解决

node 版本v6.2.0

我换成0.12.14版本基本就没这个问题了。好像跟nodejs版本有关

我反正是弃坑了, 不玩Node.js了, 太扯蛋了, 乱七八糟的.

commented

也可能是依赖包的问题, 之前许多项目都只建议使用 npm 2. nvm 用起来.

@Fuck-You-GFW 这项目没开多久你就弃了啊...

@iugo 我是弃 Node.js 这个坑了, 写代码太特么痛苦了, 不论是变种还是什么其他模式, 都不行, 我是对 JavaScript 本身不满意. 我现在是要打算用 Java 来写 p2pspider 了.

用了你的修改后的代码后发现经常卡住不动了。怎么回事呀。也没出错信息

什么叫经常卡住不动了?

我这里用6.2.0跑过, 正常. 你得确保用的是国外公网主机跑的哈.

就是不再得到新的infohash了。我昨天换回0.12.14版了。

我用的是digitalocean的vps

现在经过反复测试,用node 0.12.14版,代码修改前,基本正常,极少出现错误。代码修改后,运行1分钟程序卡住,获取不到新的infohash。用node 6.2.0,代码修改前,运行test 1-2分钟就出现1楼所示错误。代码修改后。也会卡住,获取不到新的infohash

不管了, 在版本, 代码一模一样的情况下, 这问题无法在我这里重现, 弃坑, 不用再讨论啦.