public void SendNews(string topic, string message, string updateId, NewsSentCallback success, NoConnectionCallback noconnection) { if (updateId == null) { StartCoroutine(SendNewsCoroutine(topic, message, success, noconnection)); } else { StartCoroutine(EditNewsCoroutine(topic, message, updateId, success, noconnection)); } }
public IEnumerator SendNewsCoroutine(string topic, string message, NewsSentCallback success, NoConnectionCallback noconnection) { WWWForm form = new WWWForm(); form.AddField("title", topic); form.AddField("newsBody", message); UnityWebRequest request = UnityWebRequest.Post(Constants.serverAddress + "api/news", form); m_UserManager.SetCurrentUserAuthorization(request); yield return(request.SendWebRequest()); while (!request.isDone) { yield return(new WaitForEndOfFrame()); } if (request.isNetworkError) { Debug.Log("Network error: Cannot send news: " + request.error + ", Code = " + request.responseCode); if (noconnection != null) { noconnection(); } } else if (request.isHttpError) { if (request.responseCode == 400) { Debug.Log("Http error: News data missing: " + request.error + ", Code = " + request.responseCode + " " + request.downloadHandler.text); } else if (request.responseCode == 500) { Debug.Log("Http error: Database search failed: " + request.error + ", Code = " + request.responseCode); } } else if (request.responseCode == 200) { if (success != null) { success(); } } }
public IEnumerator EditNewsCoroutine(string topic, string message, string editId, NewsSentCallback success, NoConnectionCallback noconnection) { UpdatedNews un = new UpdatedNews { title = topic, newsBody = message }; string json = JsonConvert.SerializeObject(un); UnityWebRequest request = UnityWebRequest.Put(Constants.serverAddress + "api/news/" + editId, Encoding.UTF8.GetBytes(json)); request.SetRequestHeader("Content-Type", "application/json"); m_UserManager.SetCurrentUserAuthorization(request); yield return(request.SendWebRequest()); while (!request.isDone) { yield return(new WaitForEndOfFrame()); } if (request.isNetworkError) { Debug.Log("Network error: Cannot edit news: " + request.error + ", Code = " + request.responseCode); if (noconnection != null) { noconnection(); } } else if (request.isHttpError) { if (request.responseCode == 400) { Debug.Log("Http error: News data missing: " + request.error + ", Code = " + request.responseCode + " " + request.downloadHandler.text); } else if (request.responseCode == 500) { Debug.Log("Http error: Database search failed: " + request.error + ", Code = " + request.responseCode); } } else if (request.responseCode == 200) { if (success != null) { success(); } } }