RestApi URL에 GET 요청을하여 JSON 데이터를 반환하는 메서드를 작성하고 있습니다. 디버그 모드에서 응용 프로그램을 실행할 때 응답하는 데이터 아래에 있습니다. 내가 var data = .....
그게 전부 곳을보기에서 디버그를 추가 할 때ASP.NET HTTPClient 활성화 대기 요청 상태 얻기
public IActionResult Index()
{
// Methods RestMethod = new Methods();
var data = Methods.Get("http://url/products", "domain\userid", "Password");
return View();
}
: 여기
public class Methods
{
public static async Task<JObject> Get(string url, string username, string password)
{
var credentials = new NetworkCredential(username, password);
HttpClientHandler handler = new HttpClientHandler { Credentials = credentials };
HttpClient client = new HttpClient(handler);
// client.BaseAddress = new Uri(url);
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));
HttpResponseMessage response = await client.GetAsync(url);
if (response.IsSuccessStatusCode)
{
return JObject.Parse(await response.Content.ReadAsStringAsync());
}
return new JObject { response.StatusCode };
}
}
내가 데이터에 액세스하려고 내보기입니다 : 여기
Id = 337, Status = WaitingForActivation, Method = "{null}", Result = "{Not yet computed}"
waiting for activation
을 얻고 있습니다.
정말 도움이됩니다. : 당신이 비동기를 사용하려는 경우
덕분에,
레이
맞습니다. 현재 작업을 기다리는 중입니다 ... '데이터'는 'JObject'가 아니라 작업이라는 것을 명심하십시오. –
흠 .. 그래서이'var data = await Methods.Get()'처럼'await'을 추가해야합니까? – Ray
나는 그렇다고 생각한다. 이것은'Index' 메소드가 비동기 일 필요가 있음을 의미한다. –