public string AddOrg() { var coutmodel = new SSInterfaceResultModel { ServiceURL = CommFunction.GetBaseAddress() + "api/Org/AddOrg", ParameterModel = strTerminalNo }; var countresult = new SSInterfaceAction().Send(coutmodel, "UMLServiceKey", "a4478d501b74ee89cff5743cd920bc4f"); var str = Newtonsoft.Json.JsonConvert.DeserializeObject <string>(countresult.Result); return(str); }
/// <summary> /// 发送请求 /// </summary> /// <param name="model">参数Model</param> /// <param name="userName">开放api用户名</param> /// <param name="userPwd">开放api密码</param> /// <param name="cacheDay">默认缓存天数</param> /// <returns></returns> public SSInterfaceResultModel Send(SSInterfaceResultModel model, string userName, string userPwd, int cacheDay = 7) { if (string.IsNullOrEmpty(userName) || string.IsNullOrEmpty(userPwd)) { model.ResponseCode = 10001; model.ExceptionMessage = "用户名或者密码不能为空!"; return(model); } var client = new HttpClient(); client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", SSSecurity.GetBase64(userName + ":" + userPwd)); var result = new HttpResponseMessage(); try { switch (model.SendMethod.ToLower()) { case "get": result = client.GetAsync(model.ServiceURL).Result; break; case "post": var jsonPatam = JsonConvert.SerializeObject(model); var encryptedModelStr = DESEncrypt.Encrypt(jsonPatam, userPwd); result = client.PostAsync(model.ServiceURL, encryptedModelStr, new JsonMediaTypeFormatter()).Result; break; } model.ResponseCode = (int)result.StatusCode; model.ExceptionMessage = result.ReasonPhrase; model.Result = result.Content.ReadAsStringAsync().Result; SaveCache(userName + userPwd + model.ServiceURL + JsonConvert.SerializeObject(model.ParameterModel), model.Result, cacheDay); } catch (Exception ex) { model.ResponseCode = 503; model.ExceptionMessage = ex.ToString(); var cacheResult = GetCache(userName + userPwd + model.ServiceURL + JsonConvert.SerializeObject(model.ParameterModel)); if (cacheResult == null) { return(model); } model.ResponseCode = 200; model.ExceptionMessage = string.Empty; model.Result = cacheResult; } return(model); }