例如,API:https://developers.google.com/apis-explorer/#p/calendar/v3/calendar.calendarList.list?_h=4&在进行调用之前,需要使用OAuth 2.0进行授权。
但是,如果我想在服务器中设置一个cron作业并定期获取API,该怎么办?我可以假设访问令牌一直保持不变吗?(除非我手动撤销它)
访问令牌的生存期有限。当它过期时,您可以使用刷新令牌以编程方式获取新的访问令牌。实际上,这意味着,一旦访问被授权,它将在没有用户输入的情况下工作,直到访问被撤销。
使用服务帐户。
您可以在每个作业开始时请求访问令牌,并在作业期间缓存它,或者将它存储在某个地方。确保它是加密的。
对服务器的任何调用都应该为要撤销的访问令牌做好准备。在这种情况下,请获取新的访问令牌,然后重试该请求。如果失败次数超过一定次数,请停止并假设您的设置有问题。