برای ارسال پارامترهای خودمان در بخشهای header و body میتوان از روش زیر استفاده کرد. در این روش توکن در header و یک شی به شکل json شده در body برای API ارسال میشود.
myObject request = new myObject()
{
Tracker = "478522"
};
using (HttpClient client = new HttpClient())
{
var url = new Uri(API_ADDRESS + "/AchTransferGetState");
//client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Add("Authorization", txtTokenValue.Text);
using (HttpRequestMessage bodyRequest = new HttpRequestMessage(HttpMethod.Post, url))
{
bodyRequest.Content = new StringContent(JsonConvert.SerializeObject(request), Encoding.UTF8, "application/json");
var response = client.PostAsync(url, bodyRequest.Content, new System.Threading.CancellationToken(false));
if (response.Result.StatusCode == HttpStatusCode.OK)
{
if (response.Result.IsSuccessStatusCode)
{
var finalRes = response.Result.Content.ReadAsStringAsync();
txtToken.Text = response.Result.StatusCode.ToString() + Environment.NewLine + finalRes.Result;
}
}
else
{
txtToken.Text = response.Result.StatusCode.ToString();
}
}
}