我今天发现HttpWebRequest 可以用自动登陆网站 什么的
我不怎么用 请求各位给我几个例子 让我开悟开悟!3Q3Q
我不怎么用 请求各位给我几个例子 让我开悟开悟!3Q3Q
解决方案 »
- XmlSerializer反系列化问题
- C#中使用DirectSound来获取麦克音量
- UI一个线程、文件拷贝一个线程,程序退出时想删除拷贝线程里未拷贝完的文件,但老报错。
- SOCKET 如何穿透代理连接到服务器,具体描述进来看,急
- 【今天过生日,送源代码若干】女朋友一大早上就给我送来生日蛋糕和KISS,激动,散分!
- 请教:水晶报表问题!!100分送!!急!!!
- datagrid如何设置只能整行选中?
- 为何我局域网用udp传送的文件都会损坏?文本文件能正常打开
- 急!!!100分求解Windows编程中的一个问题,知道的人快进啊??
- SqlBulkCopy 如何返回异常行
- c# richtextbox 问题 在线等
- 添加html头部信息!!!!!
/// 通过POST方式发送数据到web页面
/// </summary>
/// <param name="Url">url</param>
/// <param name="postDataStr">Post数据</param>
/// <param name="cookie">Cookie容器</param>
/// <returns>获取的html页面字符串</returns>
public string SendDataByPost(string Url, string postDataStr, CookieContainer cookie)
{
StringBuilder retString = new StringBuilder("");
HttpWebRequest request;
string siteencoding = m_spider.GetEncoding();
try
{
request = (HttpWebRequest)WebRequest.Create(Url);
string line = "";
if (cookie.Count != 0)
{
request.CookieContainer = cookie;
} if (postDataStr != "")
{
// 当post数据不为空时,明确采用post方法,取得返回数据
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = Encoding.GetEncoding(siteencoding).GetBytes(postDataStr).Length;
Stream myRequestStream = request.GetRequestStream(); StreamWriter myStreamWriter = new StreamWriter(myRequestStream, Encoding.GetEncoding(siteencoding));
myStreamWriter.Write(postDataStr);
myStreamWriter.Flush();
myStreamWriter.Close();
} HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream myResponseStream = response.GetResponseStream();
if (!response.ContentType.ToLower().StartsWith("text/"))
{
// SaveBinaryFile(response);
return null;
}
StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding(siteencoding));
while ((line = myStreamReader.ReadLine()) != null)
{
retString.AppendLine(line);
} myStreamReader.Close();
myResponseStream.Close();
}
catch (WebException e)
{
Console.WriteLine(e.Message);
Stream se = e.Response.GetResponseStream();
StreamReader ss = new StreamReader(se, Encoding.GetEncoding(siteencoding));
string sss = ss.ReadToEnd();
} return retString.ToString();
}