protected void Page_Load(object sender, EventArgs e) { //update the following 2 lines with your ID and Secret! string client_id = "fwGq5O7jTCMcW26fzzJ9DnsjgnXps5C8HioF5hz0"; string client_secret = "tN9h0GRAaKEd6wKeos87Gq2TagdyezsS7PubYI2X"; string uuid = "12345"; uuid = Request["transaction_uuid"]; WebApiClass obj = new WebApiClass(); obj.CallAPI("https://api.paydunk.com/api/v1/transactions", uuid, client_id, client_secret); }
public WebApiClass CpyInfoSave([FromBody] WebApiClass webApiClass) { if (webApiClass != null) { APIDataBase apiDataBase = new APIDataBase(); if (new VerifyHelper().CheckMallSign(webApiClass, out cpyInfo)) { return(CenterHelper.SaveCpyInfoFromCenter(cpyInfo)); } } return(null); }
public IActionResult Create([FromBody] WebApiClass item) { if (item == null) { return(BadRequest()); } _context.WebApiItem.Add(item); _context.SaveChanges(); return(CreatedAtRoute("GetTodo", new { id = item.Id }, item)); }
//Получение данных в формате XML private void обновитьДанныеXMLToolStripMenuItem_Click(object sender, EventArgs e) { if (CheckBaseURI()) { InitGridState(); //Вычисляем граничную дату периода DateTime today = DateTime.Now; DateTime tillDate = today.AddDays(-(Properties.Settings.Default.DaysBefore)); //Грузим асинхронно данные (async/await) Task tXML = WebApiClass.GetVehicleListAsyncXML(tillDate, VehiclesReadyXML); } }
private void Form1_Load(object sender, EventArgs e) { pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage; DateTime today = DateTime.Now; DateTime till = today.AddDays(-(Properties.Settings.Default.DaysBefore)); if (CheckBaseURI()) { //загружаем данные в формате Json InitGridState(); Task t = WebApiClass.GetVehicleListAsyncJson(till, VehiclesReadyJSON); } }
/// <summary> /// 将实体类加密签名后生成WebApiClass /// </summary> /// <param name="desIv"></param> /// <param name="desKey"></param> /// <param name="md5Key"></param> /// <param name="entity"></param> /// <returns></returns> private WebApiClass EncryptApiEntity <T>(string desIv, string desKey, string md5Key, T entity) where T : new() { WebApiClass webApiClass = new WebApiClass(); DESHelper desHelper = new DESHelper(desIv, desKey); long timestamp = DateHelper.DateTimeToUnixTimestamp(DateTime.Now); webApiClass.TimeStamp = desHelper.Encrypt(Convert.ToString(timestamp)); webApiClass.JsonStr = string.Empty; if (entity != null) { string jsonStr = new JavaScriptSerializer().Serialize(entity);//实体类转化成字符串 webApiClass.JsonStr = desHelper.Encrypt(jsonStr); } webApiClass.Sign = new MD5Helper(md5Key).Encrypt(webApiClass.JsonStr + webApiClass.TimeStamp); return(webApiClass); }
public IActionResult Update(long id, [FromBody] WebApiClass item) { if (item == null) { return(BadRequest()); } var todo = _context.WebApiItem.FirstOrDefault(t => t.Id == id); if (todo == null) { return(NotFound()); } todo.IsComplete = item.IsComplete; todo.Name = item.Name; System.Console.WriteLine(todo.Name); _context.WebApiItem.Update(todo); _context.SaveChanges(); return(new NoContentResult()); }
/// <summary> /// 接收到webApi的参数后进行校验参数是否正确 /// </summary> /// <param name="desIv"></param> /// <param name="desKey"></param> /// <param name="md5Key"></param> /// <param name="webApiClass"></param> /// <param name="entity"></param> /// <returns></returns> private bool CheckApiSign <T>(string desIv, string desKey, string md5Key, WebApiClass webApiClass, out T entity) where T : new() { entity = default(T); if (webApiClass != null && !string.IsNullOrEmpty(webApiClass.JsonStr) && !string.IsNullOrEmpty(webApiClass.TimeStamp) && !string.IsNullOrEmpty(webApiClass.Sign)) { if (new MD5Helper(md5Key).Encrypt(webApiClass.JsonStr + webApiClass.TimeStamp) == webApiClass.Sign) { DESHelper desHelper = new DESHelper(desIv, desKey); try { long timestampApi = Convert.ToInt64(desHelper.Decrypt(webApiClass.TimeStamp)); if (Math.Abs(DateHelper.DateTimeToUnixTimestamp(DateTime.Now) - timestampApi) < 180000) { string jsonStr = desHelper.Decrypt(webApiClass.JsonStr); entity = new JavaScriptSerializer().Deserialize <T>(jsonStr); return(true); } } catch { } } } return(false); }
/// <summary> /// 校验中心参数 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="webApiClass"></param> /// <param name="entity"></param> /// <returns></returns> public bool CheckMallSign <T>(WebApiClass webApiClass, out T entity) where T : new() { return(CheckApiSign <T>(KeyHelper.mallDesIv, KeyHelper.mallDesKey, KeyHelper.mallMd5Key, webApiClass, out entity)); }