Unhandled rejection Error: Failed to GET url: https://google.com/alerts

Unhandled rejection Error: Failed to GET url: https://google.com/alerts

我正在使用 node-horseman 访问 Google 警报并执行应用程序所需的操作,但我经常看到此错误,我找不到有用的解决方案来捕获此错误并中断操作并显示一条错误消息。

Unhandled rejection Error: Failed to GET url: https://google.com/alerts
    at checkStatus (/home/gabriel/Sites/co-report-stable/api/node_modules/node-horseman/lib/actions.js:78:16)
    at PassThroughHandlerContext.finallyHandler (/home/gabriel/Sites/co-report-stable/api/node_modules/bluebird/js/release/finally.js:56:23)
    at PassThroughHandlerContext.tryCatcher (/home/gabriel/Sites/co-report-stable/api/node_modules/bluebird/js/release/util.js:16:23)
    at Promise._settlePromiseFromHandler (/home/gabriel/Sites/co-report-stable/api/node_modules/bluebird/js/release/promise.js:510:31)
    at Promise._settlePromise (/home/gabriel/Sites/co-report-stable/api/node_modules/bluebird/js/release/promise.js:567:18)
    at Promise._settlePromise0 (/home/gabriel/Sites/co-report-stable/api/node_modules/bluebird/js/release/promise.js:612:10)
    at Promise._settlePromises (/home/gabriel/Sites/co-report-stable/api/node_modules/bluebird/js/release/promise.js:691:18)
    at Promise._fulfill (/home/gabriel/Sites/co-report-stable/api/node_modules/bluebird/js/release/promise.js:636:18)
    at /home/gabriel/Sites/co-report-stable/api/node_modules/bluebird/js/release/nodeback.js:42:21
    at /home/gabriel/Sites/co-report-stable/api/node_modules/node-phantom-simple/node-phantom-simple.js:60:18
    at IncomingMessage.<anonymous> (/home/gabriel/Sites/co-report-stable/api/node_modules/node-phantom-simple/node-phantom-simple.js:645:9)
    at emitNone (events.js:91:20)
    at IncomingMessage.emit (events.js:185:7)
    at endReadableNT (_stream_readable.js:975:12)
    at _combinedTickCallback (internal/process/next_tick.js:74:11)
    at process._tickCallback (internal/process/next_tick.js:98:9)

有没有人知道如何捕捉它?我尝试了 .on('error') 和 return,但没有任何帮助。

抓住它就够了:

.on('resourceError', function(err) {
    console.log(err.message)
})

之前.open()

如果你和我一样使用Promise,你可以return reject(new Error(err.message))