小编Gre*_*reg的帖子

如何为域部署Google Apps脚本?

我有一个脚本,我想向我们的Google Apps域的所有用户提供,但我不想将其发布到Chrome商店.我们希望避免从单个用户帐户部署它.这通常是怎么做的?

google-apps-script

7
推荐指数
1
解决办法
1486
查看次数

非常大标签的getThreads

我在标签上有900多个主题.我想将它们全部取出以在脚本中找出一些指标.getThreads()似乎最多500个线程,这与文档所说的一致:

当所有线程的大小太大而系统无法处理时,此调用将失败.如果线程大小未知且可能非常大,请使用'paged'调用,并指定要在每次调用中检索的线程范围.

所以现在我的问题就出现了

GmailApp.getUserLabelByName("Huge Label").getThreads(501, 1000).length;
Run Code Online (Sandbox Code Playgroud)

我收到消息:"参数max不能超过500." 有关如何处理具有非常大的线程数的标签的任何建议?

google-apps-script

6
推荐指数
1
解决办法
1088
查看次数

使用flow_from_clientsecrets()指定access_type = online

我有一个已被批准为openidemail范围的授权API客户端的应用程序。我仍然得到“您的域管理员已批准进入”闪屏作为记录在这里。解决方案是不通过access_type参数请求脱机访问。

我的授权流程是使用构建的flow_from_clientsecrets(),并且没有像OAuth2WebServerFlow这样的方法来传递访问类型作为参数。有没有一种方法可以指定应用程序不需要客户端库的刷新令牌?

google-api-python-client

6
推荐指数
1
解决办法
831
查看次数

以编程方式删除定时触发器

我有一个测试脚本,我正在尝试测试定时触发器.我需要能够以编程方式创建和删除触发器 - 根据文档,这是可能的.但是,当我需要时,我的触发器不会删除:

function myFunction() {
  var db = ScriptDb.getMyDb();
  var user = Session.getActiveUser().getEmail();
  var triggerID = ScriptApp.newTrigger("timed").timeBased().everyMinutes(1).create().getUniqueId();

  var ob = {
    id: user,
    count: 1,
    trigger: triggerID
  }

  db.save(ob);
}

function timed(){
  var db = ScriptDb.getMyDb();
  var user = Session.getActiveUser().getEmail();
  var ob = db.query({id: user}).next();
  var count = ob.count;
  var triggerID = ob.trigger;

  if (count > 4){
    deleteTrigger(triggerID);
    db.remove(ob);

  } else {
    Logger.log(count + " " + Utilities.formatDate(new Date(), "GMT", "HH:mm:ss") + " TriggerID=" + triggerID);
    ob.count = count+1; …
Run Code Online (Sandbox Code Playgroud)

google-apps-script

4
推荐指数
1
解决办法
1355
查看次数

获取当前用户时区

我一直在Session.getTimeZone()用来获取当前用户的时区.我刚刚注意到它已被弃用,我看不到任何复制此功能的内容.我的用户遍布美国各地,日期/时间应相应格式化.如何获取当前用户的时区而不是脚本/所有者的时区?

有问题的项目是一个独立的脚本.

google-apps-script

3
推荐指数
2
解决办法
4640
查看次数

W509Certificate2 参考缺失

我正在尝试让 Google Drive API 使用此处所述的委托服务帐户方法。我遇到的问题是这一行我应该创建一个 X509Certificate 对象:

X509Certificate2 certificate = new X509Certificate2(SERVICE_ACCOUNT_PKCS12_FILE_PATH, "notasecret",
            X509KeyStorageFlags.Exportable);
Run Code Online (Sandbox Code Playgroud)

但是,编译器告诉我,“找不到类型或命名空间名称 X509Certificate2”。我正在使用System.Security.Cryptograpyand System.Security.Cryptography.X509Certificates,根据文档,它应该包含 X509Certificate2 类。问题是,我的由于某种原因没有。它有 X509Certificate,但这不适用于上面的示例。我尝试过.net v4.5和4。

.net c# google-drive-api

1
推荐指数
1
解决办法
2598
查看次数

使用 HtmlService 的 Web 应用程序的页面标题

使用 UIApp,您可以<title>通过setTitle(). 如果我在 HtmlService 中使用 HTML 模板,我不知道该怎么做。我曾尝试<title>在模板内的不同位置放置标签,但无济于事。有什么建议?

google-apps-script

0
推荐指数
1
解决办法
506
查看次数