110,547
社区成员
发帖
与我相关
我的任务
分享
blic static string RequestUrl(string strUrl, Dictionary<string, string> postData, ref CookieContainer objCookieContainer)
{
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(strUrl);
req.Method = "POST";
req.KeepAlive = true;
req.ContentType = "application/x-www-form-urlencoded";
req.Referer = strUrl.Remove(strUrl.LastIndexOf("/"));//,,.Substring(;
// req.Timeout = 10000;
if (objCookieContainer == null)
objCookieContainer = new CookieContainer();
req.CookieContainer = objCookieContainer;
req.ContentLength = 0;
if (postData != null && postData.Count > 0)
{
StringBuilder objEncodedPostDatas = new StringBuilder();
foreach (KeyValuePair<string, string> kv in postData)
{
objEncodedPostDatas.Append(HttpUtility.UrlEncode(kv.Key));
objEncodedPostDatas.Append("=");
objEncodedPostDatas.Append(HttpUtility.UrlEncode(kv.Value));
objEncodedPostDatas.Append("&");
}
byte[] byteData = Encoding.UTF8.GetBytes(objEncodedPostDatas.ToString().TrimEnd('&'));
req.ContentLength = byteData.Length;
Stream reqStream = req.GetRequestStream();
reqStream.Write(byteData, 0, byteData.Length);
req.CookieContainer.GetCookies(req.RequestUri);
// reqStream.Close();
}
string strResponse = "";
HttpWebResponse res = (HttpWebResponse)req.GetResponse();
objCookieContainer = req.CookieContainer;
Stream resStream = res.GetResponseStream();
StreamReader sr = new StreamReader(resStream, Encoding.Default);//.UTF8))
strResponse = sr.ReadToEnd();
// res.Close();
return strResponse;
}
上面是我POST的方法 返回过来的数据中文出现乱码 求高手解决下