零——简介
一、GET
二、POST
emmm在post这里在了很多跟头,记忆很深刻。
2.1 传json的Post:简单粗暴的两个参数 一个是网址(接口),一个是json数据
分为了六个步骤 :
/// 1.定义请求字符:把json以一定的编码方式转成字节码
/// 2.新建请求
/// 3.请求以流发送:通过字节流把字节码发送到指令的接口
/// 4.定义回复
/// 5.流读取
/// 6.结果处理
1 public string HttpRequestPostJson(string url,string json) 2 { 3 string result; 4 try 5 { 6 //1.定义请求字符 7 string postData = json; 8 byte[] bt = Encoding.UTF8.GetBytes("recieved=" + postData); 9 //2.建立请求,设置请求属性 10 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(cbxUrl.Text.Trim() + "?" + "recieved=" + postData); 11 req.Method = "POST"; 12 req.ContentType = "application/json"; 13 req.ContentLength = bt.Length; 14 //req.Headers; 15 //3.请求以流发送 16 Stream streamReq = req.GetRequestStream(); 17 streamReq.Write(bt, 0, bt.Length); 18 streamReq.Close(); 19 //4.定义回复 20 HttpWebResponse res = (HttpWebResponse)req.GetResponse(); 21 //5.流读取 22 Stream streamRes = res.GetResponseStream(); 23 StreamReader reader = new StreamReader(streamRes, Encoding.UTF8); 24 //6.结果处理 25 result = reader.ReadToEnd(); 26 reader.Close(); 27 req.Abort(); 28 MessageBox.Show(result); 29 } 30 catch (Exception e) 31 { 32 33 return e.Message; 34 } 35 return result; 36 }
2.2传表单的application/x-www-form-urlencoded
x-www-form-urlencoded是一种常见的传表单的格式,基本步骤都是一样的,差别只是在ContentType和Json不一样,这里也是要注意接口的链接。
扫描二维码关注公众号,回复:
5984085 查看本文章
1 private string PostWebRequest(string postUrl, string tableData) 2 { 3 string result = string.Empty; 4 try 5 { 6 if (!postUrl.StartsWith("http://")) 7 return "( •̀ ω •́ )y请输入正确的网址"; 8 byte[] bt = Encoding.Default.GetBytes(tableData); //转化 / 9 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(new Uri(postUrl)+tableData); 10 req.Method = "POST"; 11 req.ContentType = cbxType.Text; 12 req.ContentLength = bt.Length; 13 Stream streamReq = req.GetRequestStream(); 14 streamReq.Write(bt, 0, bt.Length);//写入参数 15 streamReq.Close(); 16 HttpWebResponse res = (HttpWebResponse)req.GetResponse(); 17 StreamReader reader = new StreamReader(res.GetResponseStream(), Encoding.UTF8); 18 result = reader.ReadToEnd(); 19 reader.Close(); 20 res.Close(); 21 streamReq.Close(); 22 } 23 catch (Exception ex) 24 { 25 return ex.Message; 26 } 27 return result; 28 }