Я использую RestSharp , чтобы звонить в другой API.
Когда я делаю первый вызов API, он возвращает ожидаемые данные в течение 50-100 миллисекунд без каких-либо проблем, но через 20-30 минут, когда я снова сделал тот же запрос к той же конечной точке API, он возвращает ошибку и занимает более 20000 мс. вернуть ошибку.
Ошибка «Невозможно подключиться к удаленному серверу»
Оба вышеуказанных запроса выполняются внутри другого веб-приложения, которое потребляет эти данные.
Изначально я думал, что в API что-то не так, но когда я попробовал тот же сценарий на почтальоне, он хорошо работает.
еще одна важная вещь: эта проблема не возникает в режиме отладки. поэтому я создал много следов, чтобы отладить это со временем.
см. Простую версию кода ниже.
readonly IRestClient _client;
public BankClient(IBankSettings settings)
{
_client = new RestClient();
}
public bool IsLicenseKeyValid(string licenseKey)
{
var request = new RestRequest("URL", Method.GET);
request.AddHeader(_settings.UserName, licenseKey);
request.OnBeforeDeserialization = resp => { resp.ContentType = "application/json"; };
var response = _client.Execute<List<BankBuildingPartsModel>>(request);
if (response.ErrorException != null)
{
throw new ApplicationException("BankClient error retrieving response. Check inner details for more info.", response.ErrorException);
}
return response.Data != null;
}
Экспертная помощь очень ценится.