问题描述
我有一个使用 Google Drive 访问用户文件的 .NET 应用程序.我能够获得授权码,并且我已经能够通过 AccessToken 和 RefreshToken 交换授权码.问题是我无法刷新访问令牌,并且它会在一小时后过期.
I have a .NET application that is using Google Drive to access the user's file. I am able to get the authorization code, and I have been able to exchange the authorization code by the AccessToken and the RefreshToken. The issue is that I cannot refresh the access token, and it expires after an hour.
类似于这个问题:如何通过 google drive API 使用刷新令牌生成访问令牌? 除了我在 .NET 中工作(使用 Google.API... DLL).
Similar to this question: How to generate access token using refresh token through google drive API? except that I am working in .NET (using the Google.APIs... DLLs).
我知道这一点:https://developers.google.com/accounts/docs/OAuth2InstalledApp#refresh 但是,我期望 IAuthorizationState 或 OAuth2Authenticator 对象中提供某种方法来允许我刷新访问令牌.
I am aware of this: https://developers.google.com/accounts/docs/OAuth2InstalledApp#refresh however, I am expecting some sort of method available in the IAuthorizationState or OAuth2Authenticator object to allow me refresh the access token.
请指教.谢谢.
请注意,使用此代码我可以获得访问令牌.只是我希望这段代码在 Google API 中.
Please note that using this code I am able to get the Access Token. It is just that I am expecting this code to be inside the Google API.
推荐答案
我研究了一个更合适的示例:GoogleApisSample 的 Tasks.WinForms.NoteMgr... 并找到了解决方案.
I studied a more suitable sample: the Tasks.WinForms.NoteMgr of the GoogleApisSample... and with it I found the solution.
解决方案在下面的代码中.它的关键部分是调用 arg.RefreshToken(state);
The solution is in the code below. The key part of it is calling arg.RefreshToken(state);
谢谢.
这篇关于如何通过 .NET 中的 Google Drive SDK 使用刷新令牌生成访问令牌?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!