我正在尝试使用C#在基于Windows的应用程序中实现oAuth2(这是非常直接的Web应用程序)。
我很难从返回/重定向的URL中读取代码
以下是步骤顺序
通过单击URL https://{服务器}/auth/oauth2/authorize获取授权码?响应类型=代码&客户端ID =客户端ID} &作用域=用户&重定向URI = http://本地主机&状态= 123456789
注意:当我们点击上述URL时,它会在内部重定向到本地ADFS服务器(类似于https://adfsserver/...),并将SAML令牌发送回{Server},{Server}将验证令牌并生成以下格式的授权代码
本地主机/?代码= JSgTYUHfrIO6pHA8ha5Z55MDuC8bEl1K和状态= 123456789
现在我需要从上面的URL读取代码值。
我尝试在C#中使用WebBrowser控件,但不幸的是,它捕获了发生在ADFS服务器上的初始重定向,即捕获URL https://adfsserver/...。
任何人都可以请指导我如何捕获目标网址的代码?
注意:我再次尝试从控制台/Windows/WPF应用程序实现这一点。
先谢谢你。
使用WebBrowser控件但不成功
this._uri = $"https://{_Server}/auth/oauth2/authorize?response_type=code&client_id={_ClientId}&scope=user&redirect_uri=http://localhost&state=123456789";
this._browser = new System.Windows.Forms.WebBrowser();
this._browser.Navigated += new WebBrowserNavigatedEventHandler(browser_Navigated);
this._browser.Navigate(this._uri);
1条答案
按热度按时间r6hnlfcb1#
我就是这样做到的