C# 撤销Google应用程序回调终结点

C# 撤销Google应用程序回调终结点,c#,google-api,google-oauth,google-api-dotnet-client,C#,Google Api,Google Oauth,Google Api Dotnet Client,我们正在实现web应用程序,并使用Gmail API C#SDK提供对用户邮件的访问 我们撤销对我们应用程序的访问,如下所示: IAuthorizationCodeFlow googleApp; var token = await googleApp.LoadTokenAsync(orgId, CancellationToken.None).ConfigureAwait(false); googleApp.RevokeTokenAsync(orgId, token.AccessToken,

我们正在实现web应用程序,并使用Gmail API C#SDK提供对用户邮件的访问

我们撤销对我们应用程序的访问,如下所示:

IAuthorizationCodeFlow googleApp;

var token = await googleApp.LoadTokenAsync(orgId, CancellationToken.None).ConfigureAwait(false);

googleApp.RevokeTokenAsync(orgId, token.AccessToken, CancellationToken.None).ConfigureAwait(false);
上面的代码运行良好-它从数据存储中删除了令牌,也从谷歌第三方应用程序中删除了我们的应用程序,可以访问用户帐户

但是,如果用户想撤销应用程序,而不是使用我们的应用程序,而是从他的谷歌帐户本身——我们的应用程序如何知道这一点?在这种情况下,我们是否可以配置任何回调url来捕获和处理来自Google的呼叫?我们在文档和文档中都没有找到类似的内容

当然,我们知道,当我们调用Google并捕获特定的Google SDK TokenResponseException异常时,我们可以在代码中处理它,但是如果使用回调endpoit,则会很有用

谢谢, 埃夫根尼

但是,如果用户想撤销应用程序,而不是使用我们的应用程序,而是从他的谷歌帐户本身——我们的应用程序如何知道这一点

谷歌不会通知您,您的访问已被他们系统中的撤销

下次应用程序运行并尝试使用其刷新令牌时,将收到一条错误消息,说明您没有访问权限。您需要处理此错误消息并再次请求访问


如果您正在使用google.net客户端库,那么您不必担心它会通过再次向用户显示“同意”屏幕来处理错误。您曾询问用户如何撤销应用程序,而不是在您的应用程序中,而是从其google帐户本身。若用户登录到他们的帐户,他们只需点击你们的应用程序名称就可以撤销它