我尝试使用此代码通过Google.Apis.Auth.OAuth2库获取应用程序的Google刷新令牌。 当我在 localhost 上使用它时,它完美无缺,但是当我在 Azure网站下使用它时,它会抛出System.AggregateException 访问被拒绝InnerException。
UserCredential credential =
GoogleWebAuthorizationBroker.AuthorizeAsync(
new ClientSecrets()
{
ClientId = "<client_id>",
ClientSecret = "<client_secret>"
},
new string[] { },
Environment.UserName,
CancellationToken.None,
null
).Result;
string refreshToken = credential.Token.RefreshToken;
内部例外是:
InnerException消息:System.Net.HttpListener.SetupV2Config()拒绝访问 在System.Net.HttpListener.Start() 在Google.Apis.Auth.OAuth2.LocalServerCodeReceiver.d__6.MoveNext() ---从抛出异常的先前位置开始的堆栈跟踪结束--- 在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务) 在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在Google.Apis.Auth.OAuth2.AuthorizationCodeInstalledApp.d__8.MoveNext() ---从抛出异常的先前位置开始的堆栈跟踪结束--- 在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务) 在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在Google.Apis.Auth.OAuth2.GoogleWebAuthorizationBroker.d__4.MoveNext() ---从抛出异常的先前位置开始的堆栈跟踪结束--- 在System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(任务任务) 在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在Google.Apis.Auth.OAuth2.GoogleWebAuthorizationBroker.d__1.MoveNext()
还有其他方法可以获得刷新令牌吗?
谢谢!
答案 0 :(得分:0)
您是否已将Azure URI配置为Google控制台API管理器中的授权?