C# HttpPost HttpGet 请求接口(Get为参数链 Post参数在请求体Body)
2020-01-13 10:07
387 查看
public static string HttpGet(string url, int Timeout) { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); request.Method = "GET"; request.ContentType = "text/html;charset=UTF-8"; request.UserAgent = null; request.Timeout = Timeout; HttpWebResponse response = (HttpWebResponse)request.GetResponse(); Stream myResponseStream = response.GetResponseStream(); StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8")); string retString = myStreamReader.ReadToEnd(); myStreamReader.Close(); myResponseStream.Close(); return retString; } /// <summary> /// Post方式请求接口 /// </summary> /// <param name="action">请求的方法名</param> /// <param name="dic">请求发送的数据</param> /// <returns></returns> private string HttpPost(string action, Dictionary<string, string> dic) { //此处换为自己的请求url string url = this.GetHstHttpRequestUrl(action); string result = string.Empty; HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.Method = "POST"; 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; }
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- C# 之HTTP请求get,post带重试参数
- Android HTTP实例 使用GET方法和POST方法发送请求(通过Apache接口实现)
- C#模拟http 发送post或get请求
- 解决:ngxin做http强制跳转https,接口的POST请求变成GET
- java HttpUrlConnection get和post 模拟请求 调用接口
- AngularJs中$http发送post或者get请求,SpringMVC后台接收不到参数值的解决办法
- HttpUrlConnection用get和post请求发送参数
- C#模拟http 发送post或get请求
- 【C#】HTTP请求GET,POST
- C# 发送GET Post请求(带参数)
- 关于 HTTP GET/POST 请求参数长度最大值的一个理解误区
- 关于 HTTP GET/POST 请求参数长度最大值的一个理解误区
- 对于携带请求参数的HttpGet与的HttpPost两种请求方式,代码段分析
- 关于 HTTP GET/POST 请求参数长度最大值的问题
- C#通过发送 http 请求调用接口之Post
- PHP使用http_build_query()构造URL字符串的方法(可将POST参数组转换拼接成GET请求链接)
- C#之HTTP的GET和POST请求
- C# 实现HTTP GET POST请求
- 个人写的http接口测试页面,支持post和get参数提交
- c# HttpWebRequest post和get请求http