根据telegram api,getUpdates
函数使用长轮询(wiki)接收传入更新。
来自wiki:
如果服务器没有可用于客户端的任何信息 收到民意调查时,不是发送空的回复,而是 服务器保持请求打开并等待响应信息 变得可用。一旦它确实有新信息,服务器 立即向客户端发送HTTP / S响应,完成 打开HTTP / S请求。
那么,为什么函数getUpdates()
会立即返回,即使设置了timeout
参数?
函数调用:
bot.getUpdates(offset=lastUpdateID, timeout=120)
没有新的更新,offset = lastUpdateID是最后一次更新。
答案 0 :(得分:3)
问题是我要求offset=lastUpdateID x
,我应该要求offset=lastUpdateID x + 1