Skip to content

Instantly share code, notes, and snippets.

@riccardone
Created February 28, 2018 19:24
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save riccardone/278eaeddfab33479dbe545e291949732 to your computer and use it in GitHub Desktop.
Save riccardone/278eaeddfab33479dbe545e291949732 to your computer and use it in GitHub Desktop.
httpclient generic post
public async Task<string> Post<T>(string path, T data)
{
using (var client = new HttpClient())
{
client.Timeout = new TimeSpan(0, 0, 5);
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var json = JsonConvert.SerializeObject(data);
var responseMessage = await client.PostAsync(local_host_address + path, new StringContent(json, Encoding.UTF8, "application/json"));
var response = await responseMessage.Content.ReadAsStringAsync();
if (responseMessage.IsSuccessStatusCode)
{
return response;
}
else
{
throw new Exception("Request failed");
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment