有没有办法使用.Net Api客户端和现有的有效访问令牌。 我想使用带有现有访问令牌的google drive api v3客户端,但我发现无法填充UserCredential对象。在这种情况下,我无法使用.Net客户端,因此必须使用httpClient运行所有操作。
答案 0 :(得分:1)
我也遇到过类似的问题,但立即发现了。 您可以使用与以下代码类似的内容,但根据您的要求进行一些修改。
var flow = new GoogleAuthorizationCodeFlow(new GoogleAuthorizationCodeFlow.Initializer
{
ClientSecrets = new ClientSecrets
{
ClientId = "your_client_id",
ClientSecret = "your_client_secret_if_necessary"
},
Scopes = new [] { "scope_you_wish_to_access"}
});
var credential = new UserCredential(flow, "user_id", new TokenResponse
{
AccessToken = "user_access_token",
RefreshToken = "user_refresh_token_if_necessary"
// additional parameters if necessary
});
var service = new Any_Google_Service(new BaseClientService.Initializer
{
HttpClientInitializer = credential
});
Google lib会自动执行很多操作,例如刷新过期的访问令牌。希望对您有帮助。