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) 的线程上的回调,然后通过调用 XblHttpCallResponseGet*() 获取 XblHttpCallHandle 的 HTTP 响应来获取 HTTP 调用的结果。 不再需要 XblHttpCallHandle 时,调用 XblHttpCallCloseHandle() 以释放与 XblHttpCallHandle 相关联的内存。 只能调用 XblHttpCallPerformAsync 一次。 创建新的 XblHttpCallHandle 以重复该调用。
要求
头文件:http_call_c.h
库:Microsoft.Xbox.Services.141.GSDK.C.lib