在previous question posted here之后,我正在尝试使用服务器应用中的日历服务。
我管理身份验证流程“我自己”并将用户的访问令牌和刷新令牌存储在数据库中。现在我想我可以使用.NET客户端示例中显示的方法来使用CalendarService
。但我仍然想知道IAuthorizationState GetAuthorization(WebServerClient client)
方法的最佳实现是什么,以便仅在需要时请求刷新访问令牌。我当前的天真实现每次刷新令牌:
private IAuthorizationState GetAuthorization(WebServerClient client)
{
IAuthorizationState state = new AuthorizationState(new[] { "profile", CalendarService.Scopes.Calendar.GetStringValue() });
state.AccessToken = _accessToken;
state.RefreshToken = _refreshToken;
client.RefreshToken(state);
return state;
}
......但我确信有更明智的方法可以做到这一点!
提前致谢。
答案 0 :(得分:4)
您可以使用多种流程,具体取决于对性能,带宽,会话长度等的需求。