C#带cookie跳转

 1 static public String LoadJson(string url)
 2         {
 3             HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
 4             request.Headers.Set("Cache-Control", "max-age=0");
 5             request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
 6             request.UserAgent = App.Conf.ReadString("Request", "UserAgent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36");
 7             App.Conf.WriteString("Request", "UserAgent", request.UserAgent);
 8             request.Headers.Set("DNT", "1");
 9             request.Headers.Add("Accept-Language", "zh-CN,zh;q=0.8,en-US;q=0.6,en;q=0.4,zh-TW;q=0.2");
10             request.Timeout = http_time_out;
11             request.CookieContainer = new CookieContainer();
12             HttpWebResponse response = (HttpWebResponse)request.GetResponse();
13             if (response.StatusCode == HttpStatusCode.OK)
14             {
15                 StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.Default);
16                 return reader.ReadToEnd();
17             }
18             return string.Empty;
19         }
20 
21         static public String LoadHtml(string url)
22         {
23             HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
24             request.Headers.Set("Cache-Control", "max-age=0");
25             request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8";
26             request.UserAgent = App.Conf.ReadString("Request", "UserAgent", "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/35.0.1916.153 Safari/537.36");
27             App.Conf.WriteString("Request", "UserAgent", request.UserAgent);
28             request.Headers.Set("DNT", "1");
29             request.Headers.Set("Accept-Encoding", "gzip,deflate");
30             request.Headers.Add("Accept-Language", "zh-CN,zh;q=0.8,en-US;q=0.6,en;q=0.4,zh-TW;q=0.2");
31             request.Timeout = http_time_out;
32             request.AllowAutoRedirect = true;
33             request.CookieContainer = new CookieContainer();
34             HttpWebResponse response = (HttpWebResponse)request.GetResponse();
35             if (response.StatusCode == HttpStatusCode.OK)
36             {
37                 if (response.ContentEncoding.IndexOf("gzip") >= 0)
38                 {
39                     Stream datastream = response.GetResponseStream();
40                     System.IO.Compression.GZipStream gStream = new System.IO.Compression.GZipStream(datastream, System.IO.Compression.CompressionMode.Decompress);
41                     byte[] data = new byte[1024000];
42                     int len = gStream.Read(data, 0, 1024000);
43                     Array.Resize<byte>(ref data, len);
44                     response.Close();
45                     datastream.Dispose();
46                     gStream.Dispose();
47                     return Encoding.UTF8.GetString(data);
48                 }
49                 else
50                 {
51                     Encoding en = Encoding.Default;
52                     if (response.CharacterSet.ToLower().IndexOf("utf8") >= 0
53                         || response.CharacterSet.ToLower().IndexOf("utf-8") >= 0)
54                     {
55                         en = Encoding.UTF8;
56                     }
57                     else if (response.CharacterSet.ToLower().IndexOf("gb2312") >= 0
58                         || response.CharacterSet.ToLower().IndexOf("unicode") >= 0)
59                     {
60                         en = Encoding.Unicode;
61                     }
62                     StreamReader reader = new StreamReader(response.GetResponseStream(), en);
63                     return reader.ReadToEnd();
64                 }
65             }
66             return string.Empty;
67         }

 

posted @ 2016-02-27 14:21  reanote  阅读(754)  评论(0)    收藏  举报