У меня есть некоторые API, которые работают хорошо, и мне нужно интегрировать их с API Manager 2.6.0. Я провел несколько тестов, и все запросы Get работают очень хорошо, но когда я делаю почтовый запрос, иногда происходит сбой. По какой-то причине параметры из тела являются нулевыми, в других случаях параметры принимаются API.
Однако, если я делаю запросы без диспетчера API, все они всегда работают хорошо.< /p>
Мои API разработаны в .Net Web Api 2.0.
Это мой код для вызова API, я тестирую HttpClient и RestSharp получают тот же результат. Однако когда я тестирую с помощью Postman, API всегда работают хорошо, даже через диспетчер API.
Пример использования HttpClient:
Код: Выделить всё
public async Task PostHttpClient(TarificacionParametros entidad, string url)
{
var personaJson = JsonConvert.SerializeObject(entidad);
HttpClient httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Accept.Clear();
//httpClient.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
httpClient.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", BEARER);
HttpContent httpContent = new StringContent(personaJson, System.Text.Encoding.UTF8, "application/json");
HttpResponseMessage response = httpClient.PostAsync(url, httpContent).Result;
if (response.IsSuccessStatusCode)
{
response.EnsureSuccessStatusCode();
string responseBody = await response.Content.ReadAsStringAsync();
var data = JsonConvert.DeserializeObject(responseBody);
}
}
Код: Выделить всё
public async Task PostRestSharp(TarificacionParametros entidad, string url)
{
var client = new RestClient(url);
var request = new RestRequest(Method.POST);
request.RequestFormat = DataFormat.Json;
request.AddJsonBody(entidad);
Console.WriteLine(entidad.Capital);
// easily add HTTP Headers
request.AddParameter("Authorization", "Bearer " + BEARER, ParameterType.HttpHeader);
var response = client.Execute(request);
}
Подробнее здесь: https://stackoverflow.com/questions/559 ... er-and-net