HttpRequest Get和Post调用其他页面的方法_asp.net教程-查字典教程网
HttpRequest Get和Post调用其他页面的方法
HttpRequest Get和Post调用其他页面的方法
发布时间:2016-12-29 来源:查字典编辑
摘要:复制代码代码如下://Get请求方式privatestringRequestGet(stringUrl){stringPageStr=str...

复制代码 代码如下:

//Get请求方式

private string RequestGet(string Url)

{

string PageStr = string.Empty;//用于存放还回的html

Uri url = new Uri(Url);//Uri类 提供统一资源标识符 (URI) 的对象表示形式和对 URI 各部分的轻松访问。就是处理url地址

try

{

HttpWebRequest httprequest = (HttpWebRequest)WebRequest.Create(url);//根据url地址创建HTTpWebRequest对象

#region 参数设置

httprequest.Method = "get";

//---------------------------------------------设定一些参数(不必要可以)

//httprequest.KeepAlive = false;//持久连接设置为false

//httprequest.ProtocolVersion = HttpVersion.Version11;// 网络协议的版本

//httprequest.Proxy = WebProxy.GetDefaultProxy();//服务器代理

//httprequest.ContentType = "application/x-www-form-urlencoded";//http 头

//httprequest.AllowAutoRedirect = true;

//httprequest.MaximumAutomaticRedirections = 10;

//httprequest.Timeout = 30000;//设定超时十秒(毫秒)

//httprequest.UserAgent = "mozilla/4.0 (compatible; msie 6.0; windows nt 5.1)"; //浏览器

//=================================================

#endregion

HttpWebResponse response = (HttpWebResponse)httprequest.GetResponse();//使用HttpWebResponse获取请求的还回值

Stream steam = response.GetResponseStream();//从还回对象中获取数据流

StreamReader reader = new StreamReader(steam, Encoding.GetEncoding("gb2312"));//读取数据Encoding.GetEncoding("gb2312")指编码是gb2312,不让中文会乱码的

PageStr = reader.ReadToEnd();

reader.Close();

}

catch (Exception e)

{

PageStr += e.Message;

}

return PageStr;

}

复制代码 代码如下:

//Post请求方式,于Get的方式写法相似,所以解释就些少一点了

private string RequestPost(string Url,string Context)//两个参数分别是Url地址和Post过去的数据

{

string PageStr=string.Empty;

Uri url = new Uri(Url);

byte[] reqbytes=Encoding.ASCII.GetBytes(Context);

try

{

HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);

req.Method = "post";

req.ContentType = "application/x-www-form-urlencoded";

req.ContentLength = reqbytes.Length;

Stream stm = req.GetRequestStream();

stm.Write(reqbytes, 0, reqbytes.Length);

stm.Close();

HttpWebResponse wr = (HttpWebResponse)req.GetResponse();

Stream stream = wr.GetResponseStream();

StreamReader srd= new StreamReader(stream,Encoding.GetEncoding("gb2312"));

PageStr += srd.ReadToEnd();

stream.Close();

srd.Close();

}

catch (Exception e)

{

PageStr += e.Message;

}

return PageStr;

}

复制代码 代码如下:

public string WebClientGet(string url)

{

var client = new WebClient();

client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");

var stream = client.OpenRead(url);

if (stream == null) return "";

var reader = new StreamReader(stream, Encoding.Default);

var result = reader.ReadToEnd();

stream.Close();

reader.Close();

return result;

}

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新asp.net教程学习
    热门asp.net教程学习
    编程开发子分类