void OnGUI() { GUILayout.Label("Credentials", EditorStyles.boldLabel); myEmail = EditorGUILayout.TextField("Email", myEmail); myPassword = EditorGUILayout.PasswordField("Password", myPassword); if (GUILayout.Button("Login")) { SDKLoginRequest loginRequest = new SDKLoginRequest(); loginRequest.login = myEmail; loginRequest.password = myPassword; Login(loginRequest); EditorApplication.update += EditorUpdate; } EditorGUILayout.Separator(); myToken = EditorGUILayout.TextField("Token", myToken); EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.Separator(); EditorGUILayout.LabelField("(C) 2020 Immersal Ltd. All Right Reserved."); }
void Login(SDKLoginRequest loginRequest) { string jsonString = JsonUtility.ToJson(loginRequest); sdk = ImmersalSDK.Instance; request = UnityWebRequest.Put(string.Format(ImmersalHttp.URL_FORMAT, sdk.localizationServer, SDKLoginRequest.endpoint), jsonString); request.method = UnityWebRequest.kHttpVerbPOST; request.useHttpContinue = false; request.SetRequestHeader("Content-Type", "application/json"); request.SetRequestHeader("Accept", "application/json"); request.SendWebRequest(); }
private IEnumerator Login() { SDKLoginRequest loginRequest = new SDKLoginRequest(); loginRequest.login = emailField.text; loginRequest.password = passwordField.text; loginErrorText.gameObject.SetActive(false); string jsonString = JsonUtility.ToJson(loginRequest); //Debug.Log("jsonString: " + jsonString); byte[] myData = System.Text.Encoding.UTF8.GetBytes(jsonString); using (UnityWebRequest request = UnityWebRequest.Put(string.Format("{0}/{1}", m_server, "fcgi?6"), jsonString)) { request.method = UnityWebRequest.kHttpVerbPOST; request.useHttpContinue = false; request.SetRequestHeader("Content-Type", "application/json"); request.SetRequestHeader("Accept", "application/json"); yield return(request.SendWebRequest()); //Debug.Log("Response code: " + request.responseCode); if (request.isNetworkError || request.isHttpError) { Debug.Log(request.error); if (request.responseCode == (long)HttpStatusCode.BadRequest) { loginErrorText.text = "Login failed, please try again"; loginErrorText.gameObject.SetActive(true); } } else { Debug.Log(request.downloadHandler.text); PlayerPrefs.SetString("login", loginRequest.login); PlayerPrefs.SetString("password", loginRequest.password); SDKLoginResult loginResult = JsonUtility.FromJson <SDKLoginResult>(request.downloadHandler.text); if (loginResult.error == "none") { PlayerPrefs.SetString("token", loginResult.token); m_sdkSettings.developerToken = loginResult.token; m_toggleMappingMode.EnableMappingMode(); if (m_toggleMappingMode.MappingUI != null) { m_toggleMappingMode.MappingUI.GetComponent <Mapper>().OnLogOut += OnLogOut; } loginErrorText.gameObject.SetActive(false); FadeOut(); } else if (loginResult.error == "auth") { loginErrorText.text = "Login failed, please try again"; loginErrorText.gameObject.SetActive(true); } } } }