C#中 (HTTP+POST) 客户端调用服务端的几种方法

                String url = "http://XXXXXXXX";

                WebClient webClient = new WebClient();
                webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded");

                //方法一
                byte[] postData = Encoding.GetEncoding("GBK").GetBytes(str);
                byte[] responseData = webClient.UploadData(url, "POST", postData);
                ret = Encoding.UTF8.GetString(responseData);//解码  
WebClient 传数据流
                String url = "http://xxxxx";

                WebClient webClient = new WebClient();
                webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
           
                //方法二
                byte[] buffer = Encoding.UTF8.GetBytes(str);
                string Send = Encoding.GetEncoding("GBK").GetString(buffer);
                ret = webClient.UploadString(url, "POST", Send);
WebClient 传字符串
                -----------------------方法三----------------------------
                //转换为字节数组
                byte[] buffer = Encoding.Default.GetBytes(str);
                string Send = Encoding.UTF8.GetString(buffer);
                byte[] postData = Encoding.GetEncoding("GBK").GetBytes(Send);

                //创建请求
                HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
                request.Method = "POST";
                request.ContentType = "application/x-www-form-urlencoded";
                request.ContentLength = postData.Length;

                //创建输入流
                Stream requestStream = request.GetRequestStream();

                //发送请求给服务器
                requestStream.Write(postData, 0, postData.Length);
                requestStream.Close();

                //获取服务器返回信息
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
                string content = reader.ReadToEnd();
                string  res = reader.ReadToEnd();
                reader.Close();

                requestStream.Close();
HttpWebRequest 传数据流

 

posted @ 2015-04-27 20:49  飞行在午夜  阅读(1042)  评论(0编辑  收藏  举报