private IEnumerator SubmitResultCoroutine(ScoreboardCore.Data.Score score, Func <bool, string, bool> _onRequestComplete) { string submissionUrl = "/api/scoreboard/" + m_connection.GameName + "/submit"; ScoreSubmissionRequest scoreSubmission = ScoreboardCore.Encrypt.ScoreEncrypt.CreateRequestForScore(score, m_connection.GameKey); string scoreText = JsonConvert.SerializeObject(scoreSubmission); Debug.Log(scoreText); var request = UnityWebRequest.Put(m_connection.DatabaseAddress + submissionUrl, scoreText); request.method = UnityWebRequest.kHttpVerbPOST; request.SetRequestHeader("content-Type", "application/json"); request.SetRequestHeader("accept", "text/plain"); yield return(request.SendWebRequest()); if (request.isNetworkError || request.isHttpError) { Debug.LogError(request.error); _onRequestComplete(false, request.error); } else { Debug.Log("Post request complete!"); string resultsString = request.downloadHandler.text; Debug.Log(resultsString); _onRequestComplete(true, resultsString); } }
public void SubmitResult(ScoreboardCore.Data.Score score, Func <bool, string, bool> _onRequestComplete) { if (m_connection == null) { _onRequestComplete(false, "NO CONNECTION FILE"); return; } StartCoroutine(SubmitResultCoroutine(score, _onRequestComplete)); }