private IEnumerator UserOperate(string url, Dictionary <string, string> data, Action <UserMsg> callback) { WWWForm form = new WWWForm(); foreach (var item in data) { form.AddField(item.Key, item.Value); } WWW www = new WWW(url, form); yield return(www); UserMsg msg; if (www.error != null) { msg = new UserMsg(UserMsg.FAIL, www.error); } else { JsonData jsonData = JsonMapper.ToObject(www.text); int id = (int)jsonData["result"]; if (jsonData.Keys.Contains("data")) { msg = new UserMsg(id, jsonData["data"]); } else { msg = new UserMsg(id); } } callback.Invoke(msg); yield return(null); }
public void Login(Dictionary <string, string> data, Action <UserMsg> callback) { if (!isLogin) { Action <UserMsg> callbackAction = (UserMsg msg) => { if (msg.id == UserMsg.SUCCESS) { isLogin = true; userInfo = new UserInfo(); userInfo.UpdateServerData(msg.data); } callback.Invoke(msg); }; StartCoroutine(UserOperate("http://10.18.15.53:8080/mtb-web/user/login.do", data, callbackAction)); } else { UserMsg msg = new UserMsg(UserMsg.FAIL, "用户已登录!"); callback.Invoke(msg); } }
private void Fail(Action <UserMsg> action, string msg) { UserMsg userMsg = new UserMsg(UserMsg.FAIL, msg); action.Invoke(userMsg); }