1、不带参数的POST请求
publicstaticstringPost(stringurl) { stringresult=""; HttpWebRequestreq=(HttpWebRequest)WebRequest.Create(url); req.Method="POST"; HttpWebResponseresp=(HttpWebResponse)req.GetResponse(); Streamstream=resp.GetResponseStream(); //获取内容 using(StreamReaderreader=newStreamReader(stream,Encoding.UTF8)) { result=reader.ReadToEnd(); } returnresult; }
2、带参数的POST请求
publicstaticstringPost(stringurl,Dictionary<string,string>dic) { stringresult=""; HttpWebRequestreq=(HttpWebRequest)WebRequest.Create(url); req.Method="POST"; req.ContentType="application/x-www-form-urlencoded"; #region添加Post参数 StringBuilderbuilder=newStringBuilder(); inti=0; foreach(varitemindic) { if(i>0) builder.Append("&"); builder.AppendFormat("{0}={1}",item.Key,item.Value); i++; } byte[]data=Encoding.UTF8.GetBytes(builder.ToString()); req.ContentLength=data.Length; using(StreamreqStream=req.GetRequestStream()) { reqStream.Write(data,0,data.Length); reqStream.Close(); } #endregion HttpWebResponseresp=(HttpWebResponse)req.GetResponse(); Streamstream=resp.GetResponseStream(); //获取响应内容 using(StreamReaderreader=newStreamReader(stream,Encoding.UTF8)) { result=reader.ReadToEnd(); } returnresult; }
3、不带参数的GET请求
publicstaticstringGet(stringurl) { stringresult=""; HttpWebRequestreq=(HttpWebRequest)WebRequest.Create(url); HttpWebResponseresp=(HttpWebResponse)req.GetResponse(); Streamstream=resp.GetResponseStream(); try { //获取内容 using(StreamReaderreader=newStreamReader(stream)) { result=reader.ReadToEnd(); } } finally { stream.Close(); } returnresult; }
4、带参数的GET请求
publicstaticstringGet(stringurl,Dictionary<string,string>dic) { stringresult=""; StringBuilderbuilder=newStringBuilder(); builder.Append(url); if(dic.Count>0) { builder.Append("?"); inti=0; foreach(varitemindic) { if(i>0) builder.Append("&"); builder.AppendFormat("{0}={1}",item.Key,item.Value); i++; } } HttpWebRequestreq=(HttpWebRequest)WebRequest.Create(builder.ToString()); //添加参数 HttpWebResponseresp=(HttpWebResponse)req.GetResponse(); Streamstream=resp.GetResponseStream(); try { //获取内容 using(StreamReaderreader=newStreamReader(stream)) { result=reader.ReadToEnd(); } } finally { stream.Close(); } returnresult; }
5、自定义HTTP请求头
HttpWebRequestreq=(HttpWebRequest)WebRequest.Create(url); req.Method="GET"; req.Headers["Accept-Language"]="zh-CN,zh;q=0.8"; req.Referer="https://www.baidu.com/"; HttpWebResponseresp=(HttpWebResponse)req.GetResponse(); Streamstream=resp.GetResponseStream();stringresult="";//注意,此处使用的编码是:gb2312//using(StreamReaderreader=newStreamReader(stream,Encoding.Default))using(StreamReaderreader=newStreamReader(stream,Encoding.GetEncoding("gb2312"))) { result=reader.ReadToEnd(); }
您可能感兴趣的文章:c#使用Socket发送HTTP/HTTPS请求的实现代码C#使用HttpPost请求调用WebService的方法C#使用HttpPost方式传递Json数据字符串调用WebServiceC#请求http向网页发送接收数据的方法C#根据http和ftp图片地址获取对应图片C#模拟http发送post或get请求的简单实例C#如何解析http报文C#基于socket模拟http请求的方法C#使用IHttpModule接口修改http输出的方法C#实现发送简单HTTP请求的方法C#实现简单的Http请求实例
Silverlight实现星星闪烁动画
C#在PDF中绘制不同风格类型的文本方法实例
上述就是C#学习教程:实例详解C#实现http不同方法的请求分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/908209.html