/// <summary> /// Report - return Models.ReportResult /// </summary> /// <param name="postId"></param> /// <returns></returns> public ReportResult Report(string postId, ReportReasonId reasonId) { var data = "reason_id=" + (int)reasonId; var content = Encoding.ASCII.GetBytes(data); var request = HttpRequestBuilder.Post($"https://www.instagram.com/media/{postId}/flag/", mCoockieC); request.ContentType = "application/x-www-form-urlencoded"; request.Referer = $"https://www.instagram.com/"; request.ContentLength = content.Length; request.Headers["X-CSRFToken"] = mCoockieC.GetCookies(new Uri("https://www.instagram.com"))["csrftoken"].Value; request.Headers["X-Instagram-AJAX"] = "1"; request.Headers["X-Requested-With"] = "XMLHttpRequest"; try { using (var stream = request.GetRequestStream()) { stream.Write(content, 0, content.Length); } using (var response = request.GetResponse() as HttpWebResponse) { mCoockieC.Add(response.Cookies); if (request.HaveResponse) { using (var responseStream = response.GetResponseStream()) using (var streamReader = new StreamReader(responseStream)) { var responseData = streamReader.ReadToEnd(); return(JsonConvert.DeserializeObject <ReportResult>(responseData)); } } else { throw new WebException("no response"); } } } catch (Exception ex) { Debug.WriteLine(ex.Message); throw ex; } }
/// <summary> /// Report - return Models.ReportResult /// </summary> /// <param name="postId"></param> /// <returns></returns> public ReportResult Report(string postId, ReportReasonId reasonId) { var data = "reason_id=" + (int)reasonId; var content = Encoding.ASCII.GetBytes(data); var request = HttpRequestBuilder.Post($"https://www.instagram.com/media/{postId}/flag/", mCoockieC); request.ContentType = "application/x-www-form-urlencoded"; request.Referer = $"https://www.instagram.com/"; request.ContentLength = content.Length; request.Headers["X-CSRFToken"] = mCoockieC.GetCookies(new Uri("https://www.instagram.com"))["csrftoken"].Value; request.Headers["X-Instagram-AJAX"] = "1"; request.Headers["X-Requested-With"] = "XMLHttpRequest"; try { using (var stream = request.GetRequestStream()) { stream.Write(content, 0, content.Length); } using (var response = request.GetResponse() as HttpWebResponse) { mCoockieC.Add(response.Cookies); if (request.HaveResponse) { using (var responseStream = response.GetResponseStream()) using (var streamReader = new StreamReader(responseStream)) { var responseData = streamReader.ReadToEnd(); return JsonConvert.DeserializeObject<ReportResult>(responseData); } } else { throw new WebException("no response"); } } } catch (Exception ex) { Debug.WriteLine(ex.Message); throw ex; } }