OAuth2不适用于WinForms应用程序中的VB .NET WebBrowser控件上的Google登录

问题描述

我的目标是使VB.NET WinForms应用程序的用户能够使用Google&OAuth2登录网站,从而为我提供进行API调用所需的令牌。

当前,我可以成功使用用户名/密码组合来通过multi-step process来获取OAuth2令牌,方法是在目标为4.6.1的WinForms应用程序中使用WebBrowser控件。基本功能起作用。

问题

如果我尝试使用Google登录,而不是使用用户名/密码登录网站,则在弹出窗口要求我选择一个帐户之后,再选择一个Google帐户后,该窗口将关闭并另一个弹出,红色/蓝色圆圈移动,然后关闭,然后什么也没有发生。没有错误讯息-没事。我的原始网络浏览器内容未更改。好像什么都没发生。

我尝试过的事情

我制作了suggested changes来改进WebBrowser控件的功能,该功能似乎起作用了,因为当我访问https://whatismybrowser.com时,它报告我正在使用IE 11,但根据{{3} },JavaScript已禁用。

我无法使用WebViewer,因为由于需要4.6.1的DLL,我目前只能使用4.6.1(我正试图尽快摆脱该限制)。

尽管自Google阻止以来,您无法使用CEFSharp登录GMail等,但我进行了一项测试,您可以将其仅用于在CEFSharp中验证-即如果您仅使用它来进行身份验证以登录另一个网站,则Google不会阻止它。不幸的是,CEFSharp有点麻烦,因此,即使我在确实有必要的情况下也可以采用这种方法,但我还是希望使用常规的WinForms WebBrowser控件来实现此目的。

推测

我不知道是否会发生这种情况,因为Google现在不喜欢很多浏览器,是否是没有JavaScript的问题,还是正常的OAuth2流中是否发生了麻烦(应该重定向) ,并且由于某种原因该重定向未正确进行。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...