我需要访问自己的Google日历. oauth2内容更可能被设计为允许访问其他人的日历.
有没有办法让我的日历获得永久凭证?
编辑:
为了明确起见,我正在对一个网站进行编程,该网站需要以自定义方式显示日历事件,而不能仅通过包含iframe来实现. Web后端使用Python,我需要该后端从日历中获取事件列表,进行一些过滤并显示这些事件.事件列表必须与日历自动同步(但我打算使用缓存来减少对Google API的请求数量).
我设法获得了oath2令牌,但是它具有到期日期(“ expires_in”:3600).令牌有一个刷新选项,但是允许的刷新次数似乎有限制(请参见https://developers.google.com/accounts/docs/OAuth2第4点.刷新令牌).
由于oauth2的主要目的是允许访问其他用户的日历,所以我想知道是否存在另一种允许永久api访问我自己的日历的身份验证方案.
解决方法:
您的前提是错误的:OAuth2非常适合以编程方式访问您自己的日历以及其他任何人的日历.确实,我正好将其用于此目的.
您误解了该链接告诉您的内容.这并不是说您只能刷新有限的次数;也就是说您一次只能拥有一定数量的刷新令牌.通常,这不是问题,因为您将访问令牌存储在数据库中,并且代码会在过期时对其进行刷新.
Python客户端库的Credentials and Storage对象会为您处理所有这些:您要做的就是提供原始的刷新令牌以及客户端ID和密码,并在必要时自动刷新.