다음을 통해 공유


HttpClient.GetStringAsync(Uri) 메서드

정의

GET 요청을 지정된 URI에 보내고 비동기 작업에서 문자열로 응답 본문을 반환합니다. HttpClient 클래스 및 코드 예제에 대한 프로그래밍 지침은 HttpClient 개념 항목을 참조하세요.

public:
 virtual IAsyncOperationWithProgress<Platform::String ^, HttpProgress> ^ GetStringAsync(Uri ^ uri) = GetStringAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncOperationWithProgress<winrt::hstring, HttpProgress> GetStringAsync(Uri const& uri);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncOperationWithProgress<string,HttpProgress> GetStringAsync(System.Uri uri);
function getStringAsync(uri)
Public Function GetStringAsync (uri As Uri) As IAsyncOperationWithProgress(Of String, HttpProgress)

매개 변수

uri
Uri Uri

요청이 전송되는 URI입니다.

반환

비동기 작업을 나타내는 개체입니다.

특성

설명

이 작업은 차단되지 않습니다. 반환된 IAsyncOperationWithProgress (문자열 및 HttpProgress)는 전체 응답 본문을 읽은 후 완료됩니다.

HttpClient 클래스는 종종 앱에서 텍스트를 다운로드한 다음 구문 분석하는 데 사용됩니다. HTTP 서버에 의해 Content-Type 헤더에 지정된 문자 인코딩이 HTTP 응답 본문의 문자 인코딩(예: XML 문서의 XML 인코딩)과 일치하지 않을 수 있습니다. 텍스트와 함께 HttpClient 를 사용하는 한 가지 방법은 GetStringAsync 메서드를 호출하고 반환된 문자열을 텍스트 파서에 전달하는 것입니다. 그러나 Content-Type 이 문자열로 표현 가능한 형식이 아닌 경우 오류가 발생할 수 있습니다. XML 파서에서 HttpClient 를 사용하는 신뢰할 수 있는 방법은 GetBufferAsync 메서드를 호출하고 "<?xml>" 요소에 대한 버퍼를 구문 분석하는 것입니다. 그런 다음 지정된 문자 인코딩(예: "<xmlversion="1.0" encoding="UTF-8"?>")을 사용하여 HTTP 응답 본문을 구문 분석합니다. 다른 텍스트 형식의 경우 앱이 HTTP 응답 본문의 초기 부분을 검사하여 사용되는 문자 인코딩을 확인하는 유사한 메서드를 사용할 수 있습니다.

다음은 이 함수가 throw하는 예외입니다.

E_INVALIDARG

uri 매개 변수가 null 참조(Visual Basic에서는 Nothing)였습니다.

예외 처리

이 메서드를 호출할 때 예외를 처리하는 코드를 작성해야 합니다. 매개 변수 유효성 검사 오류, 이름 확인 실패 및 네트워크 오류로 인해 예외가 발생할 수 있습니다. 네트워크 오류(예: 연결 손실, 연결 오류 및 HTTP 서버 오류)의 예외는 언제든지 발생할 수 있습니다. 이러한 오류로 인해 예외가 발생합니다. 앱에서 처리하지 않으면 예외로 인해 런타임에 의해 전체 앱이 종료될 수 있습니다. 예외를 처리하는 방법에 대한 자세한 내용은 네트워크 앱에서 예외 처리를 참조하세요.

적용 대상

추가 정보