Google api 在谷歌日历API的上下文中,404意味着什么?
我正在尝试使用以下工具以编程方式访问我自己的日历: 在这个API的上下文中,这个错误实际上意味着什么 注:Google api 在谷歌日历API的上下文中,404意味着什么?,google-api,google-calendar-api,Google Api,Google Calendar Api,我正在尝试使用以下工具以编程方式访问我自己的日历: 在这个API的上下文中,这个错误实际上意味着什么 注: 日历确实存在,并且有事件 API限值甚至还没有接近达到 可能意味着两件事之一。您键入的日历Id正确,或者与您进行身份验证的用户无权访问该日历。确保您是使用具有该日历访问权限的正确用户登录的。您还可以选择执行一项操作,该操作将返回用户当前有权访问的日历列表。这样,您就不必担心可能会漏打日历id 授权 您使用的方法需要授权(用户权限)才能访问其日历。可以在文档页面中看到 您需要使用Oau
- 日历确实存在,并且有事件
- API限值甚至还没有接近达到
如果这是服务器到服务器应用程序,则应使用服务帐户而不是API密钥。你所需要做的就是像其他用户一样在谷歌日历上添加服务帐户。然后它将访问您的日历。@DaImTo:我删除了JS标记,因为这个问题与任何特定语言无关,而是与API有关。我在示例中使用了Python,但它与google api Python客户端库中的代码不一样,但我的Python知识有限。@DaImTo:不,这是一个
请求
调用,它是Python中HTTP调用的实现(与您提到的JS中的获取
类似-只是同步)这是一个服务器到服务器的调用,所以我使用API键。404是“找不到的”(不管这在现实中意味着什么),缺乏授权将是401或403,对吗?我的核心问题是404没有任何文档记录(或者至少我没有找到它)。此外,日历ID是正确的。是的,它可能缺乏授权。如果要使用api密钥选择数据,请确保将日历设置为公共。我已经更新了我的答案。你是对的,谢谢你的更新。我没有意识到密钥是用于配额管理的,而不是用于任何类型的身份验证。
r = requests.get(
url="https://www.googleapis.com/calendar/v3/calendars/<the ID of my calendar which looks like mydomain_randomstuff@group.calendar.google.com>/events",
params={
'key': <the key from the API console>,
'singleEvents': True,
'orderBy': 'startTime'
}
{
"error": {
"errors": [
{
"domain": "global",
"reason": "notFound",
"message": "Not Found"
}
],
"code": 404,
"message": "Not Found"
}
}
{
"error": {
"errors": [
{
"domain": "global",
"reason": "notFound",
"message": "Not Found"
}
],
"code": 404,
"message": "Not Found"
}
}