2014-07-09 36 views
0

我正在开发与用户的Google云端硬盘帐户进行通信的Windows桌面应用程序。我已经成功地创建了应用程序,并且它的工作非常好,就像我想要的那样。我跟着这个网站上的教程:http://www.daimto.com/google-oauth2-csharp/Google云端硬盘:认证过程中发生的事件

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

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

谢谢。

+0

在一个Web应用程序,可以打开与所有者是当前标签,所以你把它关闭时通知的新标签。不知道打开的csharp浏览器窗口 –

回答

0

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

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

相关问题