【问题标题】:Unable to authorize Google App Scripts in order to create a new contact无法授权 Google 应用脚本以创建新联系人
【发布时间】:2022-11-11 01:16:54
【问题描述】:

我为 Google Apps Script 工作了一段时间。我有很多程序,我已经授权了 Gmail、Docs、Drive、Calendar、UI 等……我刚刚添加了联系人……但它不起作用

我的第一步是 Contacts.createContact(),但无论我做了什么,这都失败了。文档说需要“https://www.google.com/m8/feeds”范围。我有这个。我还添加了“https://www.googleapis.com/auth/contacts”

我在工作区的管理员中打开了 API。我已使该应用程序成为受信任的应用程序。我已经删除了所有内容的授权并阅读了。奇怪的是,在列出所有请求权限的内容时给予授权,在联系人下会说“联系人:查看,编辑,删除......”它特别没有说“创建”。

我已经按照我可以为 Google 找到的所有文档进行操作,并打开了所有内容并授予了所有内容的权限。不过,我无法创建联系人。

【问题讨论】:

  • 代码在哪里?
  • 这不是代码的问题。这是授权。我给出了答案。解释是不要让人们关注正确的代码,而是关注代码的授权。

标签: google-apps-script


【解决方案1】:

这对我有用:

function createADoggieContact() {
  ContactsApp.createContact("Cooper","Dachshund","Cooper@cooper.com");
}

createContact

【讨论】:

  • 这和我的代码一样,现在可以工作了。如果您将其作为新项目中第一个执行的代码并尝试获得弹出和确认的授权,我很想知道您是否遇到与我相同的错误?如果这是为 ContactsApp 执行的第一个代码,谷歌似乎会抛出一个错误,而不是带来初始授权弹出窗口。一旦我尝试将 getContact() 作为我的第一个代码,授权弹出窗口就会起作用,授予然后 createContact 将起作用。
  • @GregGriffin 我刚刚将其作为新项目中第一个执行的代码执行,一切正常,没有错误。
  • 就像我说的,谷歌技术支持也想不通。这可能是一个独特的问题,但如果它发生在我身上,它也可能发生在其他人身上。这个答案的代码已经是我所拥有的,而不是我的问题和问题的答案。答案是先运行 ContactsApp.getContact(),然后一切正常。为这个答案做这个代码是问题,而不是答案。
【解决方案2】:

我没有发布代码,因为这不是代码问题。经过数小时的反复试验,我发现了问题所在。这在我可以在 Google 中找到的任何地方都没有记录。谷歌支持也无法弄清楚。我留下了他们希望接受的反馈。

我希望这可以帮助遇到此问题的其他人。这是因为我尝试执行的第一个方法是为了获得授权,是 ContactsApp.createContact()。首先调用它并为了获得授权似乎是不允许的,或者他们将允许作为第一个操作的东西。不知道这是否与安全有关。

我更改了我的代码,改为将 ContactsApp.getContact() 用于已知和现有的联系人。该代码有效!授权弹出。的确。得到了信息。然后我将代码改回 .createContact()....一切正常。

这似乎仅在您第一次尝试使用 ContactApp 并在您的代码中第一次授权它时出现。也许这只是我帐户中的一个小故障,但同样的小故障也可能发生在其他人身上。

【讨论】:

    【解决方案3】:

    我有同样的问题,但即使我第一次运行 ContactsApp.getContact() 以获得授权,然后切换到 ContactsApp.createContact()。

    这会是一个小故障吗?我该如何解决这个问题?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-08-25
      • 1970-01-01
      • 2013-02-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多