Win8 앱을 빌드 할 때부터 PCL (Portable Class Library) 프로젝트를 사용하기로 결정한 Windows Phone 8 프로젝트가 있습니다.HttpClient의 GetStringAsync가 신뢰할 수없는 이유는 무엇입니까?
그러나 내 Api (Azure에서)를 호출하는 동안 HttpClient의 GetStringAsync가 너무 느립니다. 나는 datetime과 GetStringAsync와 함께 몇 가지 디버그를 던졌다. 때로는 시간이 오래 걸립니다.
내가하고있는 일은 내 Azure API 사이트에서 간단한 JSON을 가져 오는 것입니다. 내 안드로이드 클라이언트가 을 가지고 있지 않습니다. 같은 데이터를 두 번째로 얻는 데 문제가 있습니다 ... 누락 된 부분이 있습니까?
셋업 꽤 정직 : 바로 전에 디버그 시간을 배치하고 거기에 await를 한 후했습니다
HttpClient client = new HttpClient();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
client.DefaultRequestHeaders.Add("X-Token", "something");
string responseJSON = await client.GetStringAsync("url");
사이에 14 초입니다!
누군가가 이유를 알고 있습니까?
호출 스택에서 다른 비동기 메서드가 호출 되었습니까? 당신은 항상 그들을 기다리고 있습니까? 때로는 느린 앱은'await' 대신에'.Result'를 사용하고 있음을 의미합니다. 예를 들어'string responseJSON = client.GetStringAsync ("url"). 결과;'. –
당신의 우리가 돌아 오는 줄은 얼마나 큽니까? 주요 속도 차이가 있다면 WP8에서 WebClient를 사용해 보셨습니까? 웹 브라우저에서 간단하게 사용할 때의 응답 속도는 어떻습니까? –
@chue x im은 그들 모두를 기다리고 있지만 지금은 그걸 실행하고 있습니다. 사용을 시도했다. 결과는 영원히 걸립니다! – Jason94