void BeginLoadingInitialUrl() { authenticator.GetInitialUrlAsync().ContinueWith(t => { if (t.IsFaulted) { keepTryingAfterError = false; authenticator.OnError(t.Exception); } else { // Delete cookies so we can work with multiple accounts if (this.authenticator.ClearCookiesBeforeLogin) { WebAuthenticator.ClearCookies(); } // // Begin displaying the page // Uri uri = t.Result; LoadInitialUrl(uri); } }, TaskScheduler.FromCurrentSynchronizationContext()); }
async void AuthenticatorControl_Loaded(object sender, Windows.UI.Xaml.RoutedEventArgs e) { var startUrl = await authenticator.GetInitialUrlAsync(); // remove cookies - don't want to remember the user credentials Windows.Web.Http.Filters.HttpBaseProtocolFilter filter = new Windows.Web.Http.Filters.HttpBaseProtocolFilter(); var cookieManager = filter.CookieManager; HttpCookieCollection cookies = cookieManager.GetCookies(startUrl); foreach (HttpCookie cookie in cookies) { cookieManager.DeleteCookie(cookie); } // navigate to the authorization page webView.Navigate(startUrl); }
protected override async void OnNavigatedTo(NavigationEventArgs e) { authenticator = (OAuth2Authenticator)e.Parameter; url_initial = this.authenticator.GetInitialUrlAsync().Result; this.browser.Navigate(url_initial); System.Diagnostics.Debug.WriteLine("OnNavigatedTo authenticator = " + authenticator.Title); authenticator.Completed += auth_Completed; authenticator.Error += auth_Error; url_initial = await authenticator.GetInitialUrlAsync(); base.OnNavigatedTo(e); return; }