コード例 #1
0
    IEnumerator CheckAuth(RegisterComplete data, bool alreadySet = false)
    {
        WWW request = new WWW(CheckAuthURL + data.token);

        yield return(request);

        if (!string.IsNullOrEmpty(request.error))
        {
            if (!string.IsNullOrEmpty(request.text))
            {
                APIError errData = JsonUtility.FromJson <APIError>(request.text);
                SendErrorNotification(errData.error.message);
            }
        }
        else
        {
            // Set Player Prefs
            // user_id -> id (Int, Id of the account)
            // user_username -> savedUsername (String, username of the account)
            // user_token -> token (String, login token)
            // user_token_expireDate -> expire_date (String, token expire date)

            AuthComplete tokenDetails = JsonUtility.FromJson <AuthComplete>(request.text);

            if (!alreadySet)
            {
                SetUserData(data.id, savedUsername, tokenDetails.token, tokenDetails.expireDate);
            }

            LoadPostLoginLevel();
        }
    }
コード例 #2
0
        /// <summary>
        /// On the <see cref="AuthenticateButton"/> click, generate an <see cref="API"/> object authenticated with the entered username, password, and database
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void AuthenticateButton_Click(object sender, EventArgs e)
        {
            Username = Username_Input.Text;
            Password = Password_Input.Text;
            Database = Database_Input.Text;
            try
            {
                api = new API(Username, Password, null, Database);
                await api.AuthenticateAsync();

                MessageBox.Show("Successfully Authenticated\nSession Id:" + api.SessionId);
                AuthComplete?.Invoke(api, true);
            }
            catch (Exception err)
            {
                Program.ShowError(err);
            }
        }