C#调用Web接口获取数据简易实现
实现代码
开头需要引用System.IO,System.Net两个命名空间。
using System.IO;
using System.Net;
GET请求
//此处自定义函数HttpGet
public static string HttpGet(string url)
{
Encoding encoding = Encoding.UTF8;//编码方式,此处为UTF-8
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);//创建Http请求
request.Method = "GET";//请求方法,此处为GET
request.Accept = "text/html, application/xhtml+xml, */*";//媒体类型
request.ContentType = "application/json";//JSON数据格式
request.Timeout = 20000;//超时时间,以毫秒为单位
HttpWebResponse response = (HttpWebResponse)request.GetResponse();//发送请求
using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
{
return reader.ReadToEnd();//返回数据
}
}
POST请求
//此处自定义函数HttpPost
public static string HttpPost(string url)
{
Encoding encoding = Encoding.UTF8;//编码方式,此处为UTF-8
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);//创建Http请求
request.Method = "Post";//请求方法,此处为GET
request.Accept = "text/html, application/xhtml+xml, */*";//媒体类型
request.ContentType = "application/json";//JSON数据格式
request.Timeout = 20000;//超时时间,以毫秒为单位
HttpWebResponse response = (HttpWebResponse)request.GetResponse();//发送请求
using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
{
return reader.ReadToEnd();//返回数据
}
}
调用函数
上面的代码是定义了用于发送请求的函数,在实际使用中还需要调用自定义的函数来实现,当然你也可以不定义函数直接使用。
//函数名("URL" + 参数);
string a = 1;
string b = HttpGet("http://www.xxx.com/api.php?a=" + a);