//1測試有效(Web端)
public static string HttpPost(string sim_uid, string mobile, string msg) { string _url = string.Format("需要請求的url"); //json參數 string jsonParam = Newtonsoft.Json.JsonConvert.SerializeObject(new { uid = sim_uid,//用戶openid mobile = mobile, msg = msg }); var request = (HttpWebRequest)WebRequest.Create(_url); request.Method = "POST"; request.ContentType = "application/json;charset=UTF-8";//ContentType byte[] byteData = Encoding.UTF8.GetBytes(jsonParam); int length = byteData.Length; request.ContentLength = length; Stream writer = request.GetRequestStream(); writer.Write(byteData, 0, length); writer.Close(); var response = (HttpWebResponse)request.GetResponse(); var responseString = new StreamReader(response.GetResponseStream(), Encoding.GetEncoding("utf-8")).ReadToEnd(); return responseString.ToString(); }
//2post(未測試)
public static string PostReqiest(string url, Dictionary<string, string> dic) { string result = ""; ServicePointManager.Expect100Continue = true; ServicePointManager.CheckCertificateRevocationList = true; ServicePointManager.DefaultConnectionLimit = 100; ServicePointManager.SecurityProtocol = (SecurityProtocolType)(0xc0 | 0x300 | 0xc00); ServicePointManager.ServerCertificateValidationCallback = delegate { return true; }; HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.ProtocolVersion = HttpVersion.Version10; req.KeepAlive = false; req.Method = "POST"; req.ContentType = "application/json"; #region 添加Post 參數 StringBuilder builder = new StringBuilder(); int i = 0; foreach (var item in dic) { if (i > 0) builder.Append("&"); builder.AppendFormat("{0}={1}", item.Key, item.Value); i++; } byte[] data = Encoding.UTF8.GetBytes(builder.ToString()); req.ContentLength = data.Length; using (Stream reqStream = req.GetRequestStream()) { reqStream.Write(data, 0, data.Length); reqStream.Close(); } #endregion HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream stream = resp.GetResponseStream(); //獲取響應內容 using (StreamReader reader = new StreamReader(stream, Encoding.UTF8)) { result = reader.ReadToEnd(); } return result; }
1.Get請求(winform端) string strURL = "http://localhost/WinformSubmit.php?tel=11111&name=張三"; System.Net.HttpWebRequest request; // 創建一個HTTP請求 request = (System.Net.HttpWebRequest)WebRequest.Create(strURL); //request.Method="get"; System.Net.HttpWebResponse response; response = (System.Net.HttpWebResponse)request.GetResponse(); System.IO.StreamReader myreader = new System.IO.StreamReader(response.GetResponseStream(), Encoding.UTF8); string responseText = myreader.ReadToEnd(); myreader.Close(); MessageBox.Show(responseText);
2.Post請求(winform端) string strURL = "http://localhost/WinformSubmit.php"; System.Net.HttpWebRequest request; request = (System.Net.HttpWebRequest)WebRequest.Create(strURL); //Post請求方式 request.Method = "POST"; // 內容類型 request.ContentType = "application/x-www-form-urlencoded"; // 參數經過URL編碼 string paraUrlCoded = System.Web.HttpUtility.UrlEncode("keyword"); paraUrlCoded += "=" + System.Web.HttpUtility.UrlEncode("多月"); byte[] payload; //將URL編碼后的字符串轉化為字節 payload = System.Text.Encoding.UTF8.GetBytes(paraUrlCoded); //設置請求的 ContentLength request.ContentLength = payload.Length; //獲得請 求流 System.IO.Stream writer = request.GetRequestStream(); //將請求參數寫入流 writer.Write(payload, 0, payload.Length); // 關閉請求流 writer.Close(); System.Net.HttpWebResponse response; // 獲得響應流 response = (System.Net.HttpWebResponse)request.GetResponse(); System.IO.StreamReader myreader = new System.IO.StreamReader(response.GetResponseStream(), Encoding.UTF8); string responseText = myreader.ReadToEnd(); myreader.Close(); MessageBox.Show(responseText);