本例采用等待post返回数据
var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.None };
using (var httpclient = new HttpClient(handler))
{
string url = AppSetting.NewWebUrl + "/Api/TeacherTask/AddTask";
httpclient.BaseAddress = new Uri(url);
var content = new StringContent("json格式字符串", Encoding.UTF8);
content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
var response = httpclient.PostAsync(url, content).Result;
string result = response.Content.ReadAsStringAsync().Result;
httpclient post 2 采用键值对
var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.None };
using (var httpclient = new HttpClient(handler))
{
string url = AppSetting.NewWebUrl + "/Api/TeacherTask/AddTask";
httpclient.BaseAddress = new Uri(url);
var content = new FormUrlEncodedContent(new Dictionary<string, string>()
{
{"id", "23"},
{"name", "ee"}
});
content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
var response = httpclient.PostAsync(url, content).Result;
string result = response.Content.ReadAsStringAsync().Result;
httpclient Get 请求
var handle = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.None};
using (var httpclient = new HttpClient(handle))
{
string url = AppSetting.NewWebUrl + "/Api/TeacherTask/GetClassTasks";
httpclient.BaseAddress = new Uri(url);
httpclient.DefaultRequestHeaders.Accept.Clear();
httpclient.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
var response = httpclient.GetAsync("?UserID=" + userId + "&ClassID=" + classId + "&SubjectID=" + subjectId + "").Result;
string result = response.Content.ReadAsStringAsync().Result;
return JsonHelper.DecodeJson<ApiResponse<Tb_Task>>(result);
}