public void Get <T>(string url, SendTypes type, Action <ReturnTypes, T, int> action) { HTTPRequest request = new HTTPRequest(new Uri(url), (HTTPRequest originalRequest, HTTPResponse response) => ParseReturn <T>(originalRequest, response, type, action)); request.Send(); }
public void Request <T>(SendTypes type, GenericData values, Action <ReturnTypes, T, int> action) { string url = ""; switch (type) { case SendTypes.GET_EVENTS: url = GetParsedUrl(PATH_EVENTS, values); Post(url, type, values, action); break; } }
private void ParseReturn <T>(HTTPRequest originalRequest, HTTPResponse response, SendTypes type, Action <ReturnTypes, T, int> action) { if (response == null) { RKLog.LogError("Parsereturn, response null ", "apicontroller"); action(ReturnTypes.ERROR, (T)(object)null, 1); return; } GenericData returnResponse = new GenericData(); SendValueResponse res; int returnerror; //Debug.Log("parsereturn 2!"); // Debug.LogError("dit is iets ervoor"); // Debug.LogError(response.DataAsText); ReturnTypes returntype; switch (type) { default: RKLog.Log("response: " + response.DataAsText); res = JsonUtility.FromJson <SendValueResponse>(response.DataAsText); foreach (ResponseStringList val in res.strings) { Debug.Log("set3: " + val.key + " to " + val.value); returnResponse.Set(val.key, val.value); } foreach (ResponseIntList val in res.ints) { returnResponse.Set(val.key, val.value); } returntype = ReturnTypes.ERROR; returnerror = -1; if (res.success) { returntype = ReturnTypes.SUCCESS; } RKLog.Log("returntype: " + returntype + " returnresponse: " + returnResponse + " res error: " + res.error); action(returntype, (T)(object)returnResponse, res.error); break; } }
public string Save(SendTypes sendTypes) { Dictionary <String, Object> valueObject = new Dictionary <string, object>(); try { valueObject.Add("success", true); valueObject.Add("message", "儲存成功"); } catch (Exception ex) { valueObject.Add("success", false); valueObject.Add("message", "儲存失敗,錯誤訊息:" + ex.Message); } return(JsonConvert.SerializeObject(valueObject)); }
public void SendMessage(SendTypes sendType, String message, int index) { if (ActiveSerialPort.IsOpen) { if (sendType == SendTypes.Clipboard && message.Length > 0) { message = message.Replace('\n', ' ').Replace('\r', ' '); ActiveSerialPort.Write("CPB:" + index + ":" + message.Substring(0, Math.Min(10, message.Length))); Console.WriteLine("CPB:" + index + ":" + message.Substring(0, Math.Min(10, message.Length))); } else if (sendType == SendTypes.ClipboardPush) { message = message.Replace('\n', ' ').Replace('\r', ' '); ActiveSerialPort.Write("CPBP:" + index + ":" + message.Substring(0, Math.Min(20, message.Length))); Console.WriteLine("CPB:" + index + ":" + message.Substring(0, Math.Min(10, message.Length))); } } }
public void Post <T>(string url, SendTypes type, GenericData data, Action <ReturnTypes, T, int> action) { HTTPRequest request = new HTTPRequest(new Uri(url), HTTPMethods.Post, (HTTPRequest originalRequest, HTTPResponse response) => ParseReturn <T>(originalRequest, response, type, action)); //if (UserController.Instance.IsLoggedIn()) //{ // request.SetHeader("User-Token", UserController.Instance.Token); //} request.SetHeader("Content-Type", "application/json; charset=UTF-8"); Dictionary <string, string> vals = new Dictionary <string, string>(); foreach (KeyValuePair <string, int> keyval in data.Ints) { vals[keyval.Key] = keyval.Value.ToString(); } foreach (KeyValuePair <string, string> keyval in data.Strings) { vals[keyval.Key] = keyval.Value.ToString(); } foreach (KeyValuePair <string, float> keyval in data.Floats) { vals[keyval.Key] = keyval.Value.ToString(); } foreach (KeyValuePair <string, bool> keyval in data.Bools) { vals[keyval.Key] = keyval.Value.ToString(); } string json = JsonConvert.SerializeObject(vals, Formatting.Indented); // Debug.Log("tosend = "+json); request.RawData = System.Text.Encoding.UTF8.GetBytes(json); request.Send(); }