我需要确定谷歌工作表中的onChange事件是由谷歌服务帐户还是由某个人触发的,因为我希望只有在触发源是人为直接编辑的情况下才处理更改的数据,否则将停止处理。
我试图用Session.getActiverUser()识别它,但是,虽然更改是通过服务帐户进行的,但显示的是我自己的电子邮件地址。
我在互联网上找不到任何东西,在谷歌文档中也找不到。
PS:为了更清楚,我做了从Firebase实时数据库到工作表的双向同步,反之亦然。因此,为了避免冗余的更新周期,我希望在代表服务帐户发生更改/更新时立即停止处理。
或者,也许有其他方法可以避免循环问题。我很乐意得到任何帮助
发布于 2020-07-18 16:21:04
因此,从根本上说,这是一个有点老套的方式,但它是有效的。
由于@TheMaster建议onChange事件参数e包含user节点,当服务账户为空时,该节点可用于区分更改事件源。

https://stackoverflow.com/questions/62950958
复制相似问题