Пример #1
0
        private void login()
        {
            try
            {
                oauth = new MicrosoftOAuth("00000000402B5328", XboxAuth.XboxScope);
                var msToken = readMicrosoft();
                var mcToken = readMinecraft();

                //if (true)
                if (mcToken == null || DateTime.Now > mcToken.ExpiresOn) // expired
                {
                    this.session = null;

                    //if (true)
                    if (oauth.TryGetTokens(out msToken, msToken?.RefreshToken)) // try ms login
                    {
                        successMS(msToken);
                    }
                    else // failed to refresh ms token
                    {
                        var url = oauth.CreateUrl();
                        CreateWV();
                        wv.Source = new Uri(url);
                    }
                }
                else // valid minecraft session
                {
                    if (this.session == null)
                    {
                        this.session = getSession(mcToken);
                    }

                    this.Close();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.ToString());
                this.session = null;
            }
        }
Пример #2
0
        private void button1_Click(object sender, EventArgs e)
        {
            MicrosoftOAuthResponse response;

            // try login using refresh token
            if (oauth.TryGetTokens(out response, refreshToken))
            {
                loginSuccess(response);
            }
            else
            {
                if (headlessMode)
                {
                    var headless = new MicrosoftOAuthHeadless(oauth.ClientId, oauth.Scope);
                    headless.GetTokensHeadless("email", "password");
                }
                else // show login page
                {
                    var url = oauth.CreateUrl();
                    webView21.Source = new Uri(url);
                }
            }
        }