需要在WinForm里调用一个url发送短信,为了防止自己忘记,特将HttpWebRequest的使用方法摘录如下:
1
public
void
SendSms(
string
phoneNumber,
string
text)
2 {
3 string url;
4 url = string.Format(@"http://a.b.c.d/path/?user=username&password=password&phonenumber={0}&text={1}&charset=gb2312", phoneNumber, HttpUtility.UrlEncode(text));
5
6 HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
7
8 request.MaximumResponseHeadersLength = 10240;
9 request.Credentials = CredentialCache.DefaultCredentials;
10 request.Method = "GET";
11 request.Timeout = 60000;
12 WebResponse webRep = request.GetResponse();
13
14 Debug.WriteLine(webRep.Headers.ToString());
15 Debug.WriteLine(webRep.ResponseUri.OriginalString);
16
17 读取网页内容/不需要#region 读取网页内容/不需要
18 // Obtain a 'Stream' object associated with the response object.
19 Stream ReceiveStream = webRep.GetResponseStream();
20
21 Encoding encode = System.Text.Encoding.GetEncoding("gb2312");
22
23 // Pipe the stream to a higher level stream reader with the required encoding format.
24 StreamReader readStream = new StreamReader(ReceiveStream, encode);
25 Console.WriteLine("\nResponse stream received");
26 Char[] read = new Char[256];
27
28 // Read 256 charcters at a time.
29 int count = readStream.Read(read, 0, 256);
30 Console.WriteLine("HTML\r\n");
31
32 while (count > 0) {
33 // Dump the 256 characters on a string and display the string onto the console.
34 String str = new String(read, 0, count);
35 Console.Write(str);
36 count = readStream.Read(read, 0, 256);
37 }
38
39 Console.WriteLine("");
40 // Release the resources of stream object.
41 readStream.Close();
42 #endregion
43
44 // Release the resources of response object.
45 webRep.Close();
46
47 }
2 {
3 string url;
4 url = string.Format(@"http://a.b.c.d/path/?user=username&password=password&phonenumber={0}&text={1}&charset=gb2312", phoneNumber, HttpUtility.UrlEncode(text));
5
6 HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(url);
7
8 request.MaximumResponseHeadersLength = 10240;
9 request.Credentials = CredentialCache.DefaultCredentials;
10 request.Method = "GET";
11 request.Timeout = 60000;
12 WebResponse webRep = request.GetResponse();
13
14 Debug.WriteLine(webRep.Headers.ToString());
15 Debug.WriteLine(webRep.ResponseUri.OriginalString);
16
17 读取网页内容/不需要#region 读取网页内容/不需要
18 // Obtain a 'Stream' object associated with the response object.
19 Stream ReceiveStream = webRep.GetResponseStream();
20
21 Encoding encode = System.Text.Encoding.GetEncoding("gb2312");
22
23 // Pipe the stream to a higher level stream reader with the required encoding format.
24 StreamReader readStream = new StreamReader(ReceiveStream, encode);
25 Console.WriteLine("\nResponse stream received");
26 Char[] read = new Char[256];
27
28 // Read 256 charcters at a time.
29 int count = readStream.Read(read, 0, 256);
30 Console.WriteLine("HTML\r\n");
31
32 while (count > 0) {
33 // Dump the 256 characters on a string and display the string onto the console.
34 String str = new String(read, 0, count);
35 Console.Write(str);
36 count = readStream.Read(read, 0, 256);
37 }
38
39 Console.WriteLine("");
40 // Release the resources of stream object.
41 readStream.Close();
42 #endregion
43
44 // Release the resources of response object.
45 webRep.Close();
46
47 }