Esempio n. 1
0
        public string GetResponseAsString(HttpWebResponse rsp, Encoding encoding)
        {
            StringBuilder result = new StringBuilder();
            Stream        stream = null;
            StreamReader  reader = null;

            try
            {
                stream = rsp.GetResponseStream();
                reader = new StreamReader(stream, encoding);
                int ch = -1;
                while ((ch = reader.Read()) > -1)
                {
                    char c = (char)ch;
                    if (c != '\0')
                    {
                        result.Append(c);
                    }
                }
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
                if (stream != null)
                {
                    stream.Close();
                }
                if (rsp != null)
                {
                    rsp.Close();
                }
            }

            //return result.ToString();
            return(AnalysysEncoder.Decompress(result.ToString()));
        }
Esempio n. 2
0
        public string Send()
        {
            HttpWebRequest req = GetWebRequest(serverUrl, "POST");

            //添加头文件
            if (egHeaderParams != null && egHeaderParams.Count > 0)
            {
                IEnumerator <KeyValuePair <string, string> > dem = egHeaderParams.GetEnumerator();
                while (dem.MoveNext())
                {
                    req.Headers.Add(dem.Current.Key, dem.Current.Value);
                }
            }
            byte[] postData = null;
            if (isEncode)
            {
                string temp = AnalysysEncoder.Compress(jsonData);//Gzip压缩
                postData = Encoding.UTF8.GetBytes(jsonData);
            }
            else
            {
                postData        = Encoding.UTF8.GetBytes(jsonData);
                req.ContentType = "application/json";
            }
            Console.WriteLine("Http Request Data: " + jsonData);
            Stream reqStream = req.GetRequestStream();

            reqStream.Write(postData, 0, postData.Length);
            reqStream.Close();

            HttpWebResponse rsp      = (HttpWebResponse)req.GetResponse();
            Encoding        encoding = Encoding.GetEncoding(rsp.CharacterSet);
            string          response = GetResponseAsString(rsp, encoding);

            Console.WriteLine("Http Response Data: " + response);
            return(response);
        }