HttpAddFragmentToCache 함수(http.h)

HttpAddFragmentToCache 함수는 검색할 수 있는 지정된 이름의 데이터 조각을 캐시하거나 지정된 이름으로 캐시된 데이터를 업데이트합니다. 이러한 캐시된 데이터 조각을 반복적으로 사용하여 디스크 읽기 비용 없이 동적 응답을 생성할 수 있습니다. 예를 들어 텍스트와 세 개의 이미지로 구성된 응답은 요청이 처리될 때 4개 이상의 캐시된 조각에서 동적으로 어셈블될 수 있습니다.

구문

HTTPAPI_LINKAGE ULONG HttpAddFragmentToCache(
  [in]           HANDLE             RequestQueueHandle,
  [in]           PCWSTR             UrlPrefix,
  [in]           PHTTP_DATA_CHUNK   DataChunk,
  [in]           PHTTP_CACHE_POLICY CachePolicy,
  [in, optional] LPOVERLAPPED       Overlapped
);

매개 변수

[in] RequestQueueHandle

이 캐시가 연결된 요청 큐에 대한 핸들입니다. 요청 큐가 생성되고 HttpCreateRequestQueue 함수에 대한 호출에서 해당 핸들이 반환됩니다.

Windows Server 2003 SP1 및 Windows XP SP2 사용: 요청 큐에 대한 핸들은 HttpCreateHttpHandle 함수에 의해 만들어집니다.

[in] UrlPrefix

애플리케이션이 이 캐시 항목을 식별하기 위해 HttpSendHttpResponse에 대한 후속 호출에서 사용하는 UrlPrefix 문자열에 대한 포인터입니다. 애플리케이션은 이전에 ReqQueueHandle 매개 변수와 동일한 핸들과 이 동일한 UrlPrefix 문자열 또는 유효한 접두사를 사용하여 HttpAddUrl을 호출해야 합니다.

다른 UrlPrefix와 마찬가지로 이 문자열은 "scheme://host:port/relativeURI" 형식을 사용해야 합니다. 예를 들면 입니다 http://www.mysite.com:80/image1.gif.

[in] DataChunk

pUrlPrefix가 가리키는 이름으로 캐시할 엔터티 본문 데이터 블록을 지정하는 HTTP_DATA_CHUNK 구조체에 대한 포인터입니다.

[in] CachePolicy

이 데이터 조각을 캐시하는 방법을 지정하는 HTTP_CACHE_POLICY 구조체에 대한 포인터입니다.

[in, optional] Overlapped

비동기 호출의 경우 pOverlappedOVERLAPPED 구조를 가리키도록 설정하거나 동기 호출의 경우 NULL로 설정합니다.

동기 호출은 캐시 작업이 완료될 때까지 호출 스레드를 차단하는 반면, 비동기 호출은 즉시 ERROR_IO_PENDING 반환하고 호출 애플리케이션은 GetOverlappedResult 또는 I/O 완료 포트를 사용하여 작업이 완료되는 시기를 결정합니다. 동기화에 OVERLAPPED 구조를 사용하는 방법에 대한 자세한 내용은 동기화 및 겹치는 입력 및 출력을 참조하세요.

반환 값

함수가 성공하면 반환 값이 NO_ERROR.

함수를 비동기적으로 사용하는 경우 ERROR_IO_PENDING 반환 값은 캐시 요청이 큐에 대기 중임을 나타내며 나중에 일반적인 겹치는 I/O 완료 메커니즘을 통해 완료됩니다.

함수가 실패하면 반환 값은 다음 오류 코드 중 하나입니다.

의미
ERROR_INVALID_PARAMETER
제공된 매개 변수 중 하나 이상이 사용할 수 없는 형식입니다.
기타
WinError.h에 정의된 시스템 오류 코드 입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista, WINDOWS XP SP2 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 http.h
라이브러리 Httpapi.lib
DLL Httpapi.dll

추가 정보

HTTP 서버 API 버전 1.0 함수

HttpFlushResponseCache

HttpReadFragmentFromCache