当前位置: 首页 > 知识库问答 >
问题:

谷歌日历v3返回403权限不足

赏高格
2023-03-14

我一直在尝试使用服务帐户访问Calendar v3 API。我已经添加了范围https://www.googleapis.com/auth/calendar并与该服务帐户的电子邮件地址共享了我的日历。

我也一直在用同一个服务帐户访问https://www.googleapis.com/auth/coordinate scope,它工作得很好。

此外,尝试撤销访问权限,如这里所述:为什么谷歌日历API(oauth2)以“权限不足”响应?

所有这一切,我仍然得到;

{"error"=>
  {"errors"=>
    [{"domain"=>"global",
      "reason"=>"insufficientPermissions",
      "message"=>"Insufficient Permission"}],
   "code"=>403,
   "message"=>"Insufficient Permission"}}

我错过了什么吗?

共有3个答案

贺浩壤
2023-03-14

我认为如果您使用Ruby的Google Calendar Quickstart,我认为您应该删除指定路径中的凭据……我尝试了一下,效果很好……您可以在这里看到凭据放在哪里

CREDENTIALS_PATH = File.join(Dir.home, '.credentials',
                             "calendar-ruby-quickstart.yaml")

在您的主目录中,您可能会找到一个目录,在您批准Google访问您的数据的请求后,Google会将您的凭据存储在该目录中。

狄阳秋
2023-03-14

你对此感到高兴吗?我碰到了同一堵砖墙。

更新:

$key = file_get_contents($key_file_location);
$scopes = array('https://www.googleapis.com/auth/calendar');
$cred = new Google_Auth_AssertionCredentials(
    $service_account_name,
    $scopes,
    $key
);

在与服务电子邮件帐户共享日历后,这对我的授权有效。

尹辰沛
2023-03-14

尝试将“userinfo.email”范围添加到您的范围,并在开发人员控制台中启用“联系人 API”和“Google API”。我花了2周时间寻找这个问题的答案,这个技巧对我有用。

 类似资料:
  • 有没有办法只要求“插入”访问用户的Google日历? 有一个范围:“https://www . Google APIs . com/auth/calendar . events”让我的应用程序对一个用户的所有日历事件拥有完全的读/写权限,但这似乎有些过头了,很可能会让我的用户对我的应用程序的操作产生不信任。

  • 我有一个python脚本,它将我的一些约会同步到两个不同的谷歌账户,两个账户都有一个谷歌日历,显然设置相同(时区设置也相同),在调用下载约会列表的时候然而,在日历上,调用返回具有不同日期格式的约会,具体取决于我要查询的日历。 使用的库是google开发的库(使用的Python版本是3.6) 脚本(在两种情况下都在同一台计算机上运行)如下所示: 我想这是一些关于日历配置的问题,但是我在设置中没有找到

  • 我正在使用Google. net客户端库来访问谷歌日历应用编程接口。我需要研发创建日历事件并将其发布给用户的应用程序。 这是一个服务器到服务器的应用程序,所以我创建了一个服务帐户,并用它来发送邀请。当从web浏览器提交响应时,创建的与会者对这些事件的响应将被更新,但当来自outlook等任何邮件客户端的响应时,响应将以电子邮件的形式发送给服务帐户电子邮件id(这是一个虚拟电子邮件id)。如何将有效

  • 从Gmail的电子邮件附件上载到Google Drive: 朋友们大家好,如果我删除文件目录中的token.pickle和token_drive.pickle文件(这些文件是与google cloud分开创建的)并运行代码: ”ResumableUploadError: 这似乎是Gmail和Drive同时身份验证的问题,因为media\u body和file\u元数据返回一个值,但我无法解决这个问

  • 我希望我的应用在用户的 Google 日历上添加/删除/更新事件。应用只需删除和更新应用本身已添加的事件。 我是否正确地理解了这一点,为了使其正常工作,用户必须向应用程序授予对其Google日历的完全访问权限,这意味着该应用程序可能会读取和删除任何日历上的私人事件? 或者,有没有办法限制用户对应用程序的访问权限,例如,允许应用程序创建单个日历,只允许它访问该日历上的事件? 我已经通读了相关的谷歌日

  • 我正在尝试使用服务帐户将文件上载到google drive,但我遇到了如下错误 (403)权限不足错误 尽管从驱动器中提取文件列表工作正常。 我在论坛上回顾了类似的问题,并尝试了一些建议,但似乎什么都不起作用。 代码有什么问题吗?