c# - 如何从 Facebook 登录获取令牌 [UWP]
问题描述
我有一个应用程序可以打开webview
并让用户登录。
我正在尝试从中获取访问令牌,baseUrl
但是在查看链接中的瞬间后访问令牌消失了,access_token=
并向我显示另一个页面的连接不安全,所以我无法接受...这是我的代码
DataPackage dataPackage = new DataPackage();
string r3 = page.Source.AbsoluteUri;
string ntoken = r3.Substring(r3.IndexOf("access_token") + 13);
string token = ntoken.Substring(0, ntoken.IndexOf("&"));
任何人都可以帮助我!
解决方案
您可以创建一个LoadComplete
事件,之后您可以每次检查链接是否具有访问令牌,如果存在则通过这种方式点击您的代码,您可以获取访问令牌并webview
在其他页面开始之前关闭
private void webview_LoadCompleted(object sender, NavigationEventArgs e)
{
if (page.Source.AbsoluteUri.Contains("access_token"))
{
DataPackage dataPackage = new DataPackage();
string r3 = page.Source.AbsoluteUri;
string ntoken = r3.Substring(r3.IndexOf("access_token") + 13);
string token = ntoken.Substring(0, ntoken.IndexOf("&"));
web.Visibility = Visibility.Collapsed;
}
}
推荐阅读
- c# - HttpContext.Current.GetOwinContext().Authentication.Challenge() 不打开 adfs 页面
- c++ - 所有按钮都应该包含对 MVC 代码 (C++) 中控制器的引用吗?
- javascript - 将类名添加到数据表的 td(列)
- javascript - 如何修复 Google Chrome 浏览器以从服务器获取所有文件?
- r - 如果在多个其他数据框中找到公共变量,如何将新列添加到数据框中
- model-view-controller - 具有很多节点的 Highcharts 组织结构图看起来不太好
- c# - IIS 池工作人员:线程是否由其他工作人员可以访问的工作人员启动?
- performance - 如何在 Google Analytics 中测量 AMP 页面的速度?
- java - 我可以将请求中的多个参数组合成控制器的单个参数吗?
- c# - 无论如何将多个api端点聚合到单个swagger文档