C#Post方式传输报文,和处理响应

王朝学院·作者佚名  2016-08-28
窄屏简体版  字體: 小  |  中  |  大  |  超大  

1publicstringDoPost(stringurl,stringdata)2{3HttpWebRequest req = GetWebRequest(url,"POST");4byte[] postData =Encoding.UTF8.GetBytes(data);5Stream reqStream =req.GetRequestStream();6reqStream.Write(postData,0, postData.Length);7reqStream.Close();8HttpWebResponse rsp =(HttpWebResponse)req.GetResponse();9Encoding encoding =Encoding.GetEncoding(rsp.CharacterSet);10returnGetResponseAsString(rsp, encoding);11}1213publicHttpWebRequest GetWebRequest(stringurl,stringmethod)14{15HttpWebRequest req =(HttpWebRequest)WebRequest.Create(url);16req.ServicePoint.Expect100Continue =false;17req.ContentType ="application/x-www-form-urlencoded;charset=utf-8";18req.ContentType ="text/json";19req.Method =method;20req.KeepAlive =true;21req.UserAgent ="mysoft";22req.Timeout =1000000;23req.PRoxy =null;24returnreq;25}2627publicstringGetResponseAsString(HttpWebResponse rsp, Encoding encoding)28{29StringBuilder result =newStringBuilder();30Stream stream =null;31StreamReader reader =null;32try33{34//以字符流的方式读取HTTP响应35stream =rsp.GetResponseStream();36reader =newStreamReader(stream, encoding);37//每次读取不大于256个字符,并写入字符串38char[] buffer =newchar[256];39intreadBytes =0;40while((readBytes = reader.Read(buffer,0, buffer.Length)) >0)41{42result.Append(buffer,0, readBytes);43}44}45finally46{47//释放资源48if(reader !=null) reader.Close();49if(stream !=null) stream.Close();50if(rsp !=null) rsp.Close();51}5253returnresult.ToString();54}

 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
© 2005- 王朝網路 版權所有 導航