Node.js Twitter机器人返回错误:Twitter流请求错误:410。

3

我运行了机器人,它运行了约8个小时,但现在只要我运行它就会出现以下问题:

events.js:183
  throw er; // Unhandled 'error' event
  ^Error: Bad Twitter streaming request: 410
at Object.exports.makeTwitError (C:\Users\arghya\Documents\Node-JS\Gracias\node_modules\twit\lib\helpers.js:74:13)
at Request.<anonymous> (C:\Users\arghya\Documents\Node-JS\Gracias\node_modules\twit\lib\streaming-api-connection.js:96:29)
at emitOne (events.js:121:20)
at Request.emit (events.js:211:7)
at IncomingMessage.<anonymous> (C:\Users\arghya\Documents\Node-JS\Gracias\node_modules\request\request.js:1083:12)
at Object.onceWrapper (events.js:313:30)
at emitNone (events.js:111:20)
at IncomingMessage.emit (events.js:208:7)
at endReadableNT (_stream_readable.js:1064:12)
at _combinedTickCallback (internal/process/next_tick.js:138:11)
at process._tickCallback (internal/process/next_tick.js:180:9)

您可以在这里参考代码:https://github.com/arghyadeep-k/Gracias/blob/master/app.js编辑:几个小时后,同样的代码开始工作了。我猜这是API的超时问题。
1个回答

4
你的代码中使用的API,通过var stream = twitter.stream('user');调用,指的是已经过时的用户流终端点。
这是因为该终端点将在8月23日完全删除,但在此日期之前,终端点将被定期关闭,以提醒开发人员需要迁移到其他替代方法,如账户活动API。您可以在此处阅读有关此停机时间表的更多信息。这就是为什么您会看到临时的410错误。它将在本周内变得越来越频繁。

现在要使用流API,我们可以使用twit或twitter npm包,还是需要使用express创建完整的webAPI? - Arghya
我该如何使用 Twit 接收直接消息? - Rohit Nair
twit模块目前不支持帐户活动API,该API可以实时传递直接消息,您需要使用替代库。 - Andy Piper

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接