Bagikan melalui


Fungsi HttpAddFragmentToCache (http.h)

Fungsi HttpAddFragmentToCache menyimpan fragmen data dengan nama tertentu yang dapat diambil, atau memperbarui data yang di-cache dengan nama tertentu. Fragmen data yang di-cache tersebut dapat digunakan berulang kali untuk membangun respons dinamis tanpa mengorbankan pembacaan disk. Misalnya, respons yang terdiri dari teks dan tiga gambar dapat dirakit secara dinamis dari empat fragmen cache atau lebih pada saat permintaan diproses.

Sintaks

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

Parameter

[in] RequestQueueHandle

Tangani ke antrean permintaan yang terkait dengan cache ini. Antrean permintaan dibuat dan handelnya dikembalikan oleh panggilan ke fungsi HttpCreateRequestQueue .

Windows Server 2003 dengan SP1 dan Windows XP dengan SP2: Handel ke antrean permintaan dibuat oleh fungsi HttpCreateHttpHandle .

[in] UrlPrefix

Arahkan ke string UrlPrefix yang digunakan aplikasi dalam panggilan berikutnya ke HttpSendHttpResponse untuk mengidentifikasi entri cache ini. Aplikasi harus memanggil HttpAddUrl sebelumnya dengan handel yang sama seperti dalam parameter ReqQueueHandle , dan dengan string UrlPrefix yang identik ini atau awalan yang valid.

Seperti UrlPrefix lainnya, string ini harus mengambil formulir "scheme://host:port/relativeURI"; misalnya, http://www.mysite.com:80/image1.gif.

[in] DataChunk

Penunjuk ke struktur HTTP_DATA_CHUNK yang menentukan blok data isi entitas untuk di-cache dengan nama yang ditunjukkan oleh pUrlPrefix.

[in] CachePolicy

Penunjuk ke struktur HTTP_CACHE_POLICY yang menentukan bagaimana fragmen data ini harus di-cache.

[in, optional] Overlapped

Untuk panggilan asinkron, atur pOverlapped untuk menunjuk ke struktur YANG TUMPANG TINDIH , atau untuk panggilan sinkron, atur ke NULL.

Panggilan sinkron memblokir utas panggilan hingga operasi cache selesai, sedangkan panggilan asinkron segera mengembalikan ERROR_IO_PENDING dan aplikasi panggilan kemudian menggunakan port penyelesaian GetOverlappedResult atau I/O untuk menentukan kapan operasi selesai. Untuk informasi selengkapnya tentang menggunakan struktur YANG TUMPANG TINDIH untuk sinkronisasi, lihat Sinkronisasi dan Input dan Output yang Tumpang Tindih.

Nilai kembali

Jika fungsi berhasil, nilai yang dikembalikan adalah NO_ERROR.

Jika fungsi digunakan secara asinkron, nilai pengembalian ERROR_IO_PENDING menunjukkan bahwa permintaan cache diantrekan dan akan selesai nanti melalui mekanisme penyelesaian I/O yang tumpang tindih normal.

Jika fungsi gagal, nilai yang dikembalikan adalah salah satu kode kesalahan berikut.

Nilai Makna
ERROR_INVALID_PARAMETER
Satu atau beberapa parameter yang disediakan dalam bentuk yang tidak dapat digunakan.
Lainnya
Kode kesalahan sistem yang ditentukan dalam WinError.h.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista, Windows XP dengan SP2 [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header http.h
Pustaka Httpapi.lib
DLL Httpapi.dll

Lihat juga

Fungsi HTTP Server API Versi 1.0

HttpFlushResponseCache

HttpReadFragmentFromCache