Я пытаюсь вызвать метод в контроллере с веб-страницы. Однако, когда код запускается, он прекращает выполнение в httpClient.SendAsyn c (запрос) ;. Никогда не выходит за рамки этого. Он отлично работает в консольном приложении. net, но не в веб-приложении ASP. NET.
Это мой метод:
public static async Task<Employee> LoadData(int ID)
{
using (var httpClient = new HttpClient())
{
using (var request = new HttpRequestMessage(new HttpMethod("GET"), "https://api.example.net/api/GetData"))
{
request.Headers.TryAddWithoutValidation("Authorization", "Basic TOKEN HERE");
var response = await httpClient.SendAsync(request);
response.EnsureSuccessStatusCode();
string responseBody = await response.Content.ReadAsStringAsync();
JObject o = JObject.Parse(responseBody);
JToken t = o.SelectToken("$.value[?(@.Id == " + "'" + ID + "'" + ")]");
string a = t.ToString();
Employee e = JsonConvert.DeserializeObject<Employee>(a);
return e;
}
}
}
Это метод контроллера :
public JsonResult Test()
{
try
{
Api.LoadData(507);
return Json(true, JsonRequestBehavior.AllowGet);
}
catch (Exception ex)
{
return Json(false, JsonRequestBehavior.AllowGet);
}
}
Любая помощь приветствуется.