1.创一个HttpUitls类,接受网络数据
public class HttpUitls
{
public static string Get(string Url)
{
//System.GC.Collect();
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
request.Proxy = null;
request.KeepAlive = false;
request.Method = "GET";
request.ContentType = "application/json; charset=UTF-8";
request.AutomaticDecompression = DecompressionMethods.GZip;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream myResponseStream = response.GetResponseStream();
StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.UTF8);
string retString = myStreamReader.ReadToEnd();
myStreamReader.Close();
myResponseStream.Close();
if (response != null)
{
response.Close();
}
if (request != null)
{
request.Abort();
}
return retString;
}
public static string Post(string Url)
{
string Data = "";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
request.Method = "POST";
request.Referer = "";
byte[] bytes = Encoding.UTF8.GetBytes(Data);
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = bytes.Length;
try
{
Stream myResponseStream = request.GetRequestStream();
myResponseStream.Write(bytes, 0, bytes.Length);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader myStreamReader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
string retString = myStreamReader.ReadToEnd();
myStreamReader.Close();
myResponseStream.Close();
if (response != null)
{
response.Close();
}
if (request != null)
{
request.Abort();
}
return retString;
}
catch
{
MessageBox.Show("无法连接到远程服务器");
return "";
}
}
internal static string Post(object p, string v)
{
throw new NotImplementedException();
}
}
2.创一个Bean类,放解析后的数据。
class LoginBean
{
public String retCode { get; set; }//返回结果:成功0001,失败0000
public String errCode { get; set; }//错误编码,见 附录(未定),返回结果为0000时不可空
public String errMsg { get; set; }//错误描述信息,返回结果为0000时不可空
public Data_LoginBean data { get; set; }
public class Data_LoginBean
{
public int organzier_id { get; set; }
public int flag { get; set; }
}
}
3.获得获取数据的网址
string web = Url.URL + Url.login + "userName=" + textBox_username.Text + "&password=" + Md5.getMd5(textBox_password.Text) + "&flag=" + identity;//拼一个网址
4.获取json数据
string json = HttpUitls.Post(web);
5.解析json数据
if (json != "")
{
LoginBean loginBean = (LoginBean)JsonConvert.DeserializeObject(json, typeof(LoginBean));
//
//具体用数据
//
}