Я совершал этот тип вызовов десятки раз, но по какой-то причине это не работает в моей тестовой среде в Azure, но работает на моем локальном хосте просто отлично. Результат никогда не возвращается из моего сервиса, даже ошибка тайм-аута или ответ «0», ничего. Что я мог упустить при вызове конечной точки API? В моих логах тоже нет ошибок.
Единственный способ получить ответ - если я удаляю Тайм-аут = 2700000, который в этом случае возвращает ответ "0". Но мой вызов занимает больше нескольких минут, поэтому без установленного тайм-аута он всегда будет возвращать ответ «0».
ОБНОВЛЕНИЕ: Я также пытался использовать вызовы await / asyn c, но тоже не повезло. ОБНОВЛЕНИЕ: я переключился с Restsharp и использовал вместо этого вызов Httpclient, и все еще те же результаты. Так что я даже не думаю, что это острая проблема в одиночку.
var appSettings = ConfigurationManager.AppSettings;
var restClient = new RestClient(appSettings["Url"]);
var request = new RestRequest("api/Sync")
{
Method = Method.POST,
Timeout = 2700000,
RequestFormat = DataFormat.Json
};
request.AddHeader("authUser", appSettings["username"]);
request.AddHeader("authPass", appSettings["password"]);
request.AddHeader("Content-Type", "application/json");
var body = JsonConvert.SerializeObject(deserializeItem);
request.AddParameter("application/json; charset=utf-8", body, ParameterType.RequestBody);
var result = restClient.Execute(request);
var response = JsonConvert.DeserializeObject<ResultObj>(result.Content);