共用方式為


HttpAddFragmentToCache 函式 (http.h)

HttpAddFragmentToCache 函式會快取具有指定名稱的數據片段,以便擷取數據片段,或更新在指定名稱下快取的數據。 這類快取的數據片段可以重複用來建構動態回應,而不需要磁碟讀取費用。 例如,由文字和三個影像組成的回應,可以在處理要求時,動態地從四個或多個快取片段組合。

語法

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 字串指標,以識別此快取專案。 應用程式先前必須呼叫 HttpAddUrl ,其句柄與 ReqQueueHandle 參數相同,而且具有這個相同的 UrlPrefix 字串或它的有效前置詞。

如同任何 UrlPrefix,此字串的格式必須是 “scheme://host:port/relativeURI”;例如, http://www.mysite.com:80/image1.gif

[in] DataChunk

HTTP_DATA_CHUNK 結構的指標,指定要在 pUrlPrefix 所指向的名稱下快取的實體主體數據區塊。

[in] CachePolicy

HTTP_CACHE_POLICY結構的指標,指定應該如何快取此數據片段。

[in, optional] Overlapped

針對異步呼叫,請將 pOverlapped 設定為指向 重疊 結構,或針對同步呼叫,將它設定為 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