Google文档/电子表格/演示文稿的实时更改

nec*_*cer 12 google-drive-api

是否可以获得对Google文档(文档/电子表格/演示文稿)所做更改的实时通知(无需大量轮询)?如果是这样,那么模型结构是什么(如果有意义的话)?任何指向文档或示例的指针都会有所帮助!

https://developers.google.com/drive/manage-changes上的文档提供了一个API调用,该调用会立即返回,并告诉您自上一个调用以来是否有任何更改.但是,一旦做出更改,您几乎不知道这是无用的 - 您必须每秒或更早地重新进行API调用,并且会浪费大量资源.相比之下,Drive Real-time API提供了一种在没有广泛和频繁轮询的情况下即时通知任何更改的方法.它通过一个"挂起"的HTTP调用执行此操作,直到准备好更改(或计时器到期).这是一种经典的长轮询技术.

我的问题是Google Documents/Spreadsheets/Presentations是否存在此类工具.或者它仅适用于除这些标准文件之外的自定义应用程序特定文件.如果没有,有没有计划让它们可用?

提前致谢!

San*_*eev 3

据我所知,答案是“不”。我以前尝试过这个,只能通过定时轮询来做到这一点。API 仅限于仅在您询问时告诉您,而不是在发生事情时告诉您。

我想到了一个嵌入到文档中的代码,并向特定的 URL 或某个侦听器进行自我广播。我的实验是使用Google App Scripts。详细想法是创建一个在“保存”事件上触发的自定义函数。但我不能再进一步了,因为根据我的说法,文档中没有足够的内容来实现这个特定的目标。

关于此可用性的时间表,脚本论坛中有相关问题,但没有人对此做出答复。

  • 截至目前,似乎使用 Google Apps 脚本您无法在电子表格的“onEdit”事件中发出 HTTP 请求(“FetchUrlApp”)。https://code.google.com/p/google-apps-script-issues/issues/detail?id=185#makechanges (2认同)