请求地址 ///
赞
踩
public class HttpHelperUtils { /// <summary> /// Post请求 参数为Json 格式 /// </summary> /// <param name="url">请求地址</param> /// <param name="dic">参数对象 类型 Object </param> /// <param name="result">请求结果数据</param> /// <param name="token">Token,不需要Token时 无需传参</param> /// <param timeOut="token">请求过期时间</param> /// <returns></returns> public static bool postForJson(string url, Object dic, out string result, String token = "false", int timeOut = 5000) { string param = JsonConvert.SerializeObject(dic); System.Net.HttpWebRequest request; request = (System.Net.HttpWebRequest)WebRequest.Create(url); request.Method = "POST"; request.Timeout = timeOut; if (token != "false") { request.Headers["Authorization"] = "Bearer " + token; } request.ContentType = "application/json;charset=UTF-8"; byte[] payload; payload = System.Text.Encoding.UTF8.GetBytes(param); request.ContentLength = payload.Length; string strValue = ""; try { Stream writer = request.GetRequestStream(); writer.Write(payload, 0, payload.Length); writer.Close(); System.Net.HttpWebResponse response; response = (System.Net.HttpWebResponse)request.GetResponse(); System.IO.Stream s; s = response.GetResponseStream(); string StrDate = ""; StreamReader Reader = new StreamReader(s, Encoding.UTF8); while ((StrDate = Reader.ReadLine()) != null) { strValue += StrDate; } result = strValue; return true; } catch (Exception e) { strValue = e.Message; result = e.Message; return false; } } /// <summary> /// Post请求 参数以UrlEncode方式发送 /// </summary> /// <param name="url">请求地址</param> /// <param name="dic">参数对象 类型 Object </param> /// <param name="result">请求结果数据</param> /// <param name="token">Token,不需要Token时 无需传参</param> /// <param timeOut="token">请求过期时间</param> /// <returns></returns> public static bool postForUrlEcode(string url, Dictionary<String, Object> dic, out string result, String token = "false", int timeOut = 5000) { try { HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.Method = "POST"; req.Timeout = timeOut; if (token != "false") { req.Headers["Authorization"] = "Bearer " + token; } req.ContentType = "application/x-www-form-urlencoded"; #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; return true; } catch (Exception e) { result = e.Message; return false; } } /// <summary> /// 不带参数的Get请求 /// </summary> /// <param name="url"></param> /// <param name="result"></param> /// <param name="token"></param> /// <param name="timeOut"></param> /// <returns></returns> public static bool get(string url, out String result, String token = "false", int timeOut = 5000) { HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.Timeout = timeOut; req.Method = "GET"; if (token != "false") { req.Headers["Authorization"] = "Bearer " + token; } HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream stream = resp.GetResponseStream(); try { //获取内容 using (StreamReader reader = new StreamReader(stream)) { result = reader.ReadToEnd(); } } finally { stream.Close(); } return true; } /// <summary> /// 发送Get请求 /// </summary> /// <param name="url">地址</param> /// <param name="dic">请求参数定义</param> /// <returns></returns> public static string Get(string url, Dictionary<string, string> dic, String token = "false", int timeOut = 5000) { string result = ""; StringBuilder builder = new StringBuilder(); builder.Append(url); if (dic.Count > 0) { builder.Append("?"); int i = 0; foreach (var item in dic) { if (i > 0) builder.Append("&"); builder.AppendFormat("{0}={1}", item.Key, item.Value); i++; } } HttpWebRequest req = (HttpWebRequest)WebRequest.Create(builder.ToString()); //添加参数 HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream stream = resp.GetResponseStream(); try { //获取内容 using (StreamReader reader = new StreamReader(stream)) { result = reader.ReadToEnd(); } } finally { stream.Close(); } return result; } }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。