public bool Send(JsonPacket jp, DSN dsn) { try { HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(dsn.SentryURI); request.Method = "POST"; request.Accept = "application/json"; request.ContentType = "application/json; charset=utf-8"; request.Headers.Add("X-Sentry-Auth", PacketBuilder.CreateAuthenticationHeader(dsn)); ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3; request.UserAgent = "RavenSharp/1.0"; Console.WriteLine("Header: " + PacketBuilder.CreateAuthenticationHeader(dsn)); Console.WriteLine("Packet: " + jp.Serialize()); // Write the messagebody. using (Stream s = request.GetRequestStream()) { using (StreamWriter sw = new StreamWriter(s)) { // Compress and encode. //string data = Utilities.GzipUtil.CompressEncode(jp.Serialize()); //Console.WriteLine("Writing: " + data); // Write to the JSON script when ready. sw.Write(jp.Serialize()); // Close streams. sw.Flush(); sw.Close(); } s.Flush(); s.Close(); } HttpWebResponse wr = (HttpWebResponse)request.GetResponse(); } catch (WebException e) { Console.ForegroundColor = ConsoleColor.Red; Console.Write("[ERROR] "); Console.ForegroundColor = ConsoleColor.Gray; Console.WriteLine(e.Message); string messageBody = String.Empty; using (StreamReader sw = new StreamReader(e.Response.GetResponseStream())) { messageBody = sw.ReadToEnd(); } Console.WriteLine("[MESSAGE BODY] " + messageBody); return false; } return true; }
public bool Send(JsonPacket jp, DSN dsn) { //try { HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(dsn.SentryURI); request.Method = "POST"; request.Accept = "application/json"; request.ContentType = "application/json; charset=utf-8"; request.Headers.Add("X-Sentry-Auth", PacketBuilder.CreateAuthenticationHeader(dsn)); ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3; request.UserAgent = "RavenSharp/1.0"; request.Timeout = 2000; //Console.WriteLine("Header: " + PacketBuilder.CreateAuthenticationHeader(dsn)); //Console.WriteLine("Packet: " + jp.Serialize()); // Write the messagebody. using (Stream s = request.GetRequestStream()) { string data = jp.Serialize(); if (LogScrubber != null) data = LogScrubber.Scrub(data); byte[] byteArray = Encoding.UTF8.GetBytes(data); s.Write(byteArray, 0, byteArray.Length); } using (HttpWebResponse webResponse = (HttpWebResponse)request.GetResponse()) { } }/* catch (WebException e) { Console.ForegroundColor = ConsoleColor.Red; Console.Write("[ERROR] "); Console.ForegroundColor = ConsoleColor.Gray; Console.WriteLine(e.Message); if (e.Response != null) { string messageBody = String.Empty; using (StreamReader sw = new StreamReader(e.Response.GetResponseStream())) { messageBody = sw.ReadToEnd(); } Console.WriteLine("[MESSAGE BODY] " + messageBody); } return false; }*/ return true; }