遇到神秘的引用错误(使用节点v 0.4.9)

我写了一个节点程序来抓取url内容。 由于很多东西都被扔进机器,我有一个uncaughtException的进程监听器,只是把错误结果放到日志文件中,而不是让它杀死守护进程。 最近浏览这个日志文件,我发现有些不妥之处。 这是一个经常被抛出的错误和堆栈跟踪:

堆栈跟踪:

ReferenceError:GEL没有在Timer.callback(timers.js:Object._onTimeout)处定义(http://www.freep.com/article/20110809/ENT04/110809051/1001/news:undefined:undefined:2:25) 83:39)

我知道的信息量不大 当然,我磨练了我的GEL源代码。 然后我编写了我所有的节点模块依赖关系(没有那么多)。 然后我为节点寻找GEL 。 然后我用v8换了GEL 。 然后我停下来,问StackOverflow …我做错了什么? (在我的代码中,我没有做任何不合理的事情,比如试图评估随机string或者其他东西。)

重要的是:节点v 0.4.9 …认为它也会在v 0.4.10上抛出

我解决了这个问题。 这实际上是我的代码的错。 我正在debugging的代码是使用jsdom模块,它是从我正在抓取的网页中parsingjavascript。 我通过改进我的regex解决了我所遇到的问题,该regex除去了<script>标记,并将一个额外的featuresparameter passing给了我的jsdom.env调用:

 jsdom.env({ html: myHtml, done: myCallback, url: url, features : { FetchExternalResources : [], ProcessExternalResources : false } });