Google云端硬盘:在身份验证期间捕获事件

时间:2014-07-09 17:00:31

标签: c# .net oauth-2.0 google-drive-api

我正在开发一个与用户的Google云端硬盘帐户进行通信的Windows桌面应用程序。我已经成功创建了应用程序,它的工作方式非常好,就像我想要的那样。我按照本网站上的教程:http://www.daimto.com/google-oauth2-csharp/

但有一点我无法弄清楚如何从身份验证过程中捕获事件。当GoogleWebAuthorizationBroker.AuthorizeAsync启动Web浏览器以允许用户进行身份验证时,如果用户单击“取消”以禁止,则API会引发错误。这就是我知道身份验证没有通过的方式。

但是当用户关闭浏览器窗口而不是单击取消时,我的应用程序一直在等待用户的响应。如何在用户关闭浏览器窗口时捕获事件,以便我的应用程序可以继续其流程。

感谢。

1 个答案:

答案 0 :(得分:0)

我找到了办法。最好自己编写OAuth身份验证,而不是尝试从Google的OAuth API中捕获事件。我在包含webbrowser的c#中创建了一个winform,并通过它完成了所有通信和用户同意。因此,如果用户关闭窗口我就会知道。

参考http://www.daimto.com/google-api-and-oath2/