首页 技术 正文
技术 2022年11月14日
0 收藏 499 点赞 3,346 浏览 2058 个字
 public class Httphelper
{
public static string Post1(string url, string postString)
{ using (WebClient webClient = new WebClient())
{
byte[] postData = Encoding.UTF8.GetBytes(postString);//编码,
webClient.Headers.Add("Content-Type", "application/json");//采取POST方式必须加的header,如果改为GET方式的话就去掉这句话即可
byte[] responseData = webClient.UploadData(url, "POST", postData);//得到返回字符流
string srcString = Encoding.UTF8.GetString(responseData);//解码
return srcString;
}
} public static string Post(string url, string postData)
{
string result = ""; HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.Method = "POST"; req.ContentType = "application/json"; byte[] data = Encoding.UTF8.GetBytes(postData); req.ContentLength = data.Length;
//req.Timeout = 30000;
using (Stream reqStream = req.GetRequestStream())
{
reqStream.Write(data, , data.Length); reqStream.Close();
} HttpWebResponse resp = (HttpWebResponse)req.GetResponse(); Stream stream = resp.GetResponseStream(); //获取响应内容
using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
{
result = reader.ReadToEnd();
} return result;
}
}

HttpClient 调用

  /// <summary>
/// post 同步
/// </summary>
/// <param name="url"></param>
/// <param name="postString"></param>
/// <returns></returns>
public static string Post(string url, string postData)
{
try
{
using (HttpClient _httpClient = new HttpClient())
{
StringContent httpClient = new StringContent(postData, Encoding.UTF8, "application/json");
var response = _httpClient.PostAsync(url, httpClient).Result;
string jsonstr = response.Content.ReadAsStringAsync().Result;
return jsonstr;
}
}
catch (Exception ex)
{
_logger.LogError(string.Format("Api调用异常--url【{0}】,参数【{1}】", url, postData), ex);
return "";
}
}
/// <summary>
/// post 异步
/// </summary>
/// <param name="url"></param>
/// <param name="postData"></param>
/// <returns></returns>
public static async void PostAsync(string url, string postData)
{
try
{
using (HttpClient _httpClient = new HttpClient())
{
StringContent httpClient = new StringContent(postData, Encoding.UTF8, "application/json");
var response = await _httpClient.PostAsync(url, httpClient);
string jsonstr = await response.Content.ReadAsStringAsync();
}
}
catch (Exception ex)
{
_logger.LogError(string.Format("Api调用异常--url【{0}】,参数【{1}】", url, postData), ex);
}
}
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:8,893
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,422
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,240
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,053
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,683
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,720