public IEnumerator CheckServerStatus(YkiApi.RequestCallBack callback) { while (_serverStatus == ServerStatus.None || _serverStatus == ServerStatus.Connecting) { yield return(new WaitForSeconds(1.0f)); Debug.Log("waiting for server response..."); } //yield return null; if (callback != null) { if (_serverStatus == ServerStatus.ConnectSuccess) { callback(WebExceptionStatus.Success, _serverResult); } else if (_serverStatus == ServerStatus.ConnectFailed) { callback(WebExceptionStatus.ConnectFailure, _serverResult); } } StopCoroutine("CheckServerStatus"); }
public IEnumerator SendRequestCor(string url, string auth, string method, string pdata, YkiApi.RequestCallBack callback) { RequestState requestState = new RequestState(); ServicePointManager.DefaultConnectionLimit = 30; ServicePointManager.ServerCertificateValidationCallback = (p1, p2, p3, p4) => true; HttpWebRequest httpWebRequest = (HttpWebRequest)WebRequest.Create(url); httpWebRequest.ContentType = "application/json"; httpWebRequest.Headers.Set("Authorization", auth); httpWebRequest.Method = method; httpWebRequest.KeepAlive = true; httpWebRequest.Credentials = System.Net.CredentialCache.DefaultCredentials; requestState.request = httpWebRequest; requestState._callback = callback; requestState._pData = pdata; if (method == "GET") { httpWebRequest.BeginGetResponse(new AsyncCallback(GetResponseCallback), requestState); } else { httpWebRequest.BeginGetRequestStream(new AsyncCallback(GetRequestStreamCallback), requestState); } yield return(null); }
//public delegate void RequestCallBack(WebExceptionStatus status, string result); public void SendRequest(string url, string auth, string method, string pdata, YkiApi.RequestCallBack callback) { StartCoroutine(SendRequestCor(url, auth, method, pdata, callback)); }
public void doAddMember(string mail, string pass, YkiApi.RequestCallBack callback) { _serverStatus = ServerStatus.Connecting; YkiApi.AddMember(mail, pass, waitServerStatusCallback); StartCoroutine(CheckServerStatus(callback)); }
public void doLogin(string user, string pass, YkiApi.RequestCallBack callback) { _serverStatus = ServerStatus.Connecting; YkiApi.Login("0", user, pass, waitServerStatusCallback); StartCoroutine(CheckServerStatus(callback)); }