Skip to main content

HCMockAddMock

配置 libHttpClient 在调用 HCHttpCallPerformAsync() 时返回模拟响应,而不进行网络调用。

Syntax

Parameters

call   _In_
Type: HCMockCallHandle
此 HC_MOCK_CALL_HANDLE 表示已使用 HCMockResponseSet*() 相应配置好的模拟。 method   _In_opt_z_
Type: char*
如果只希望模拟应用于特定 URL,请传入 UTF-8 编码的方法和 URL。 url   _In_opt_z_
Type: char*
如果只希望模拟应用于特定 URL,请传入 UTF-8 编码的方法和 URL。 requestBodyBytes   _In_reads_bytes_opt_(requestBodySize)
Type: uint8_t*
如果只希望模拟应用于特定 URL 与请求字符串,请传入方法、URL 和字符串正文。 requestBodySize   _In_
Type: uint32_t
requestBodyBytes 的大小(以字节为单位)。

Return value

Type: HRESULT 此 API 操作的结果代码。可能的值为 S_OK、E_INVALIDARG、E_OUTOFMEMORY 或 E_FAIL。

Remarks

若要定义模拟响应,请使用 HCMockCallCreate() 创建一个新的 HC_MOCK_CALL_HANDLE 来表示该模拟。然后使用 HCMockResponseSet*() 设置模拟响应。默认情况下,模拟响应将对所有 HTTP 调用返回。如果只希望模拟应用于特定 URL,请传入 URL。如果只希望模拟应用于特定 URL 与请求正文,请传入 URL 和正文。当 HC_MOCK_CALL_HANDLE 按需配置完毕后,通过调用 HCMockAddMock() 将该模拟添加到系统。可以通过多次调用 HCMockAddMock() 并传入一组模拟响应来设置多个活动模拟响应。如果 HTTP 调用与一组已设置的模拟响应匹配,则会在每次后续调用 HCHttpCallPerformAsync() 时按顺序执行它们。命中最后一个匹配的模拟响应后,最后一个匹配的模拟响应将在每次后续调用 HCHttpCallPerformAsync() 时重复返回。

Requirements

Header: mock.h Library: libHttpClient.GDK.lib

See also

mock
最后修改于 2026年8月13日