Encoding Charset:UTF8 Problem in HttpWebRequest

23 Views Asked by At
  var path = "/test";

            HttpWebRequest httpWebRequestContent = (HttpWebRequest)WebRequest.Create(Domain + path);
            httpWebRequestContent.ContentType = "application/json;charset=UTF-8";
            httpWebRequestContent.Accept = "application/json;charset=UTF-8";
            httpWebRequestContent.PreAuthenticate = true;
            httpWebRequestContent.Headers.Add("token", Token);
            httpWebRequestContent.Method = "POST";

            using (StreamWriter streamWriterContent = new StreamWriter(httpWebRequestContent.GetRequestStream(),Encoding.UTF8))
            {

                string json = JsonConvert.SerializeObject(new
                {
                    message = Message,
                    sender = Sender,
                    etkFlag = false,
                    receivers = Receivers
                });
                streamWriterContent.Write(json);
            }

            HttpWebResponse httpResponseContent = null;
            httpResponseContent = (HttpWebResponse)httpWebRequestContent.GetResponse();

            var response = new SendSMSResponseClass();
            using (StreamReader streamReaderContent = new StreamReader(httpResponseContent.GetResponseStream(), Encoding.UTF8))
            {
                string message = streamReaderContent.ReadToEnd();
                response = JsonConvert.DeserializeObject<SendSMSResponseClass>(message);
            }

            return response;

This is the code that I post REST API method.

The problem is they want me to use charset:UTF-8 if I use \ in my message. However when I run this code , it doesn't do what I want to do with '\n' in the result.

0

There are 0 best solutions below