使用Google日历API返回401(未经授权)

Using Google Calendar API returns 401 (unauthorized)

本文关键字:授权 Google 日历 API 返回 使用      更新时间:2023-09-26

我正在尝试通过JavaScript使用Google Calendar API,并在使用以下代码时不断获得401错误响应:

$.ajax({ 
   dataType: "json", 
   url: "https://www.googleapis.com/calendar/v3/users/me/calendarList/<calendarID>?key=<my api key>", 
   success: function(result){ 
   $('#result').html(result); 
   } 
});

我对API的使用是否有问题?我应该如何使用oAuth?我已经有了来自谷歌控制台的clientIDsecretID,但不知道如何使用它们。

谢谢。

以下是经过大量研究后的答案,我刚刚找到并使用了这本使用谷歌日历api的指南http://googleappsdeveloper.blogspot.com/2011/12/using-new-js-library-to-unlock-power-of.html

然后我仍然很困惑,因为每次我尝试重新生成它几次,api密钥都不起作用。然后我不得不在没有任何引用的情况下使用浏览器密钥,正如这里提到的:Getting Error 403:Access Not Configured。请使用Google开发者控制台为您的项目激活API

最后我把一切都安排好了。

这里还有一篇关于理解OAuth2的主要文章https://developers.google.com/accounts/docs/OAuth2

为了使用Google Calendar API,您不仅需要客户端ID和客户端机密,而且在大多数情况下(除了访问公共日历),您还需要对用户进行身份验证。实现这一点的一种方法是使用Oauth2。

我建议您使用可以在此处下载的客户端库:https://developers.google.com/google-apps/calendar/downloads

这里还有一个关于如何使用库的示例:https://developers.google.com/api-client-library/javascript/samples/samples