为什么ContactsApp.getContactById()运行缓慢

时间:2017-05-19 10:27:07

标签: google-apps-script

我在Google工作表脚本函数中通过id获取联系人,返回联系人需要10到35秒。这是代码:

var id = 'http://www.google.com/m8/feeds/contacts/xxxxxxxxx%40gmail.com/base/xxxxxxxxxx';
var contact = ContactsApp.getContactById(id);

有没有办法加快调用速度?在一个小组中获得所有300多个联系人只需不到一秒钟:

var myContactsGroup = ContactsApp.getContactGroup('System Group: My Contacts');

1 个答案:

答案 0 :(得分:1)

与Spreadsheets(和其他产品)一起使用时,App Script会变慢。想象一下它必须遍历的所有行和列。您可以做的是找到优化运营的方法。这是我发现的:

App Script Best practices

  • 尽量减少对其他服务的调用

  • 使用Team Drives进行协作 可能

  • 使用批处理操作
  • 在UI重型脚本中避免使用库
  • 使用 缓存服务
  • 说明包含在文档链接中。

Don't make several calls when you can do it in one.

  

电话费用相对较高,因此拨打电话的次数很少   要改善表现。其次,如果您可以批量拨打电话   (更多关于批量处理的事情),这意味着你不太可能   交错读写(获取和设置)。

博客中包含了代码比较。

相关问题