Дано:
Uri location = ...; // Remote 3rd party HTTP Rest API
string body = "SOME JSON";
Следующий код RestClient
генерирует HTTP-трафик, который принимается сервером.
var client = new RestClient(location);
var request = new RestRequest(Method.POST);
request.AddHeader("cache-control", "no-cache");
request.AddHeader("content-type", "application/json; charset=utf-8");
request.AddParameter("application/json; charset=utf-8", body,
ParameterType.RequestBody);
var restResponse = client.Execute(request);
Однако приведенный ниже код HttpClient
должен генерировать другой HTTP-трафик (указанный сервером, отклонившим запрос).
using (var client = new HttpClient())
{
var request = new HttpRequestMessage();
request.Method = HttpMethod.Post;
request.RequestUri = location;
var bodyContent = new StringContent(body, Encoding.UTF8, "application/json");
request.Content = bodyContent;
request.Headers.Add("cache-control", "no-cache");
client.Timeout = TimeSpan.FromMinutes(5.0);
var response = await client.SendAsync(request);
}
Почему код HttpClient по-разному сериализуется?