private void SendCreateRequest(EnemyRequestData data) { client.PostRequest(client.postUrl, data, result => { Debug.Log(result); OnDataRecieved(result); }); }
private IEnumerator Post(string url, EnemyRequestData data, System.Action <string> callback) { var jsonData = JsonUtility.ToJson(data); Debug.Log(jsonData); using (UnityWebRequest www = UnityWebRequest.Post(url, jsonData)) { www.SetRequestHeader("content-type", "application/json"); www.uploadHandler.contentType = "application/json"; www.uploadHandler = new UploadHandlerRaw(System.Text.Encoding.UTF8.GetBytes(jsonData)); yield return(www.SendWebRequest()); if (www.isNetworkError) { Debug.Log(www.error); } else { if (www.isDone) { // handle the result var result = System.Text.Encoding.UTF8.GetString(www.downloadHandler.data); result = "{\"result\":" + result + "}"; callback(result); } else { //handle the problem Debug.Log("Error! data couldn't get."); } } } }
public void OnCreateClicked(System.Action <EnemyRequestData> callback) { if (InputsAreValid()) { var enemy = new EnemyRequestData( nameField.text, int.Parse(healthField.text), int.Parse(attackField.text) ); callback(enemy); } else { Debug.LogWarning("Invalid Input"); } }
public void PostRequest(string url, EnemyRequestData data, System.Action <string> callback) { StartCoroutine(Post(url, data, callback)); }