1、不带参数的POST请求
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
public static string Post( string url) { string result = "" ; HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.Method = "POST" ; HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream stream = resp.GetResponseStream(); //获取内容 using (StreamReader reader = new StreamReader(stream, Encoding.UTF8)) { result = reader.ReadToEnd(); } return result; } |
2、带参数的POST请求
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
public static string Post( string url,Dictionary< string , string > dic) { string result = "" ; HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.Method = "POST" ; req.ContentType = "application/x-www-form-urlencoded" ; #region 添加Post 参数 StringBuilder builder = new StringBuilder(); int i = 0; foreach (var item in dic) { 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 (Stream reqStream = req.GetRequestStream()) { reqStream.Write(data, 0, data.Length); reqStream.Close(); } #endregion HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream stream = resp.GetResponseStream(); //获取响应内容 using (StreamReader reader = new StreamReader(stream, Encoding.UTF8)) { result = reader.ReadToEnd(); } return result; } |
3、不带参数的GET请求
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
public static string Get( string url) { string result = "" ; HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream stream = resp.GetResponseStream(); try { //获取内容 using (StreamReader reader = new StreamReader(stream)) { result = reader.ReadToEnd(); } } finally { stream.Close(); } return result; } |
4、带参数的GET请求
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
public static string Get( string url, Dictionary< string , string > dic) { string result = "" ; StringBuilder builder = new StringBuilder(); builder.Append(url); if (dic.Count > 0) { builder.Append( "?" ); int i = 0; foreach (var item in dic) { if (i > 0) builder.Append( "&" ); builder.AppendFormat( "{0}={1}" , item.Key, item.Value); i++; } } HttpWebRequest req = (HttpWebRequest)WebRequest.Create(builder.ToString()); //添加参数 HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream stream = resp.GetResponseStream(); try { //获取内容 using (StreamReader reader = new StreamReader(stream)) { result = reader.ReadToEnd(); } } finally { stream.Close(); } return result; } |
5、自定义HTTP请求头
1
2
3
4
5
6
7
8
9
|
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.Method = "GET" ; req.Headers[ "Accept-Language" ] = "zh-CN,zh;q=0.8" ; req.Referer = "https://www.baidu.com/" ; HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream stream = resp.GetResponseStream(); string result = "" ; //注意,此处使用的编码是:gb2312 //using (StreamReader reader = new StreamReader(stream, Encoding.Default)) using (StreamReader reader = new StreamReader(stream, Encoding.GetEncoding("gb2312"))) { result = reader.ReadToEnd(); } |
原文链接:https://blog.csdn.net/xishining/article/details/80809747