我正在使用Python开发一款与Google云端硬盘同步的应用。在查找文件的更改时,我正在使用changes()API调用。不幸的是由于某些原因我每次都得到相同的maximumChangeId,所以我每次都会得到相同的变化。我的代码是
changeResults = driveRC.client.changes().list(includeDeleted = True, startChangeId = driveRC.changeID).execute()
# Do some stuff
driveRC.changeID= changeResults['largestChangeId']
最后,changeID从调用结果更新,因此下次调用时应该使用新的changeID。但是每当我拨打电话时,我都会收到来自谷歌的更改信息。 它第一次被称为使用我之前通过空呼叫获得的更改ID。任何人都知道这是为什么,或者我做错了什么?
提前感谢您的帮助!
答案 0 :(得分:1)
只有在存在用户活动/要报告的新更改时,maximumChangeId才会更改。如果您在重复调用中获得相同的largestChangeId,则意味着没有可用的更改。
您调用它的方式,您将获得自startChangeId包含的最新更改。您可能希望在startChangeId中添加+1,以避免两次获得最后一次更改。