다음을 통해 공유


XblHttpCallPerformAsync

XblHttpCallHandle을 사용하여 HTTP 호출을 수행합니다.

구문

HRESULT XblHttpCallPerformAsync(  
         XblHttpCallHandle call,  
         XblHttpCallResponseBodyType type,  
         XAsyncBlock* asyncBlock  
)  

매개 변수

call _In_
유형: XblHttpCallHandle

HTTP 호출의 핸들입니다.

type _In_
형식: XblHttpCallResponseBodyType

이 HTTP 호출의 결과를 읽을 응답 본문 형식입니다. 참고: 콘텐츠 형식 헤더에는 영향을 주지 않습니다. 이 헤더는 XblHttpCallRequestSetHeader를 호출하여 제공해야 합니다.

asyncBlock _Inout_
형식: XAsyncBlock*

비동기 작업을 정의하는 XAsyncBlock입니다.

반환 값

형식: HRESULT

이 API 작업에 대한 결과 코드입니다. 가능한 값은 S_OK, E_INVALIDARG, E_OUTOFMEMORY 또는 E_FAIL입니다.

설명

우선 XblHttpCallCreate()를 사용하여 HTTP 핸들을 생성합니다. 그런 다음 XblHttpCallRequestSet*()를 호출하여 XblHttpCallHandle을 준비합니다. 그런 다음 XblHttpCallPerformAsync()를 호출하여 XblHttpCallHandle을 사용하여 HTTP 호출을 수행합니다. 이 호출은 비동기식이므로 백그라운드 스레드에서 작업이 수행되고 콜백을 통해 반환됩니다. 수행 호출은 비동기식이므로 작업은 XTaskQueueDispatch(..., XTaskQueuePort::Work)를 호출하는 백그라운드 스레드에서 수행됩니다. 결과는 XTaskQueueDispatch(..., XTaskQueuePort::Completion)를 호출하는 스레드의 콜백으로 반환된 다음 XblHttpCallHandle의 HTTP 응답을 가져오기 위해 XblHttpCallResponseGet*()를 호출하여 HTTP 호출의 결과를 가져옵니다. XblHttpCallHandle이 더 이상 필요하지 않으면 XblHttpCallCloseHandle()을 호출하여 XblHttpCallHandle과 연결된 메모리를 해제합니다. XblHttpCallPerformAsync는 한 번만 호출할 수 있습니다. 호출을 반복하기 위해 새 XblHttpCallHandle을 만듭니다.

요건

헤더: http_call_c.h

도서관: Microsoft.Xbox.Services.14x.GDK.C.lib

참고 항목

http_call_c