Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
HTTP Server API menyediakan fungsionalitas bagi pengguna untuk menyimpan fragmen data dalam cache untuk digunakan dalam respons HTTP yang terbentuk dengan cepat.
Fragmen dapat ditambahkan ke cache dengan memanggil fungsiHttpAddFragmentToCache. Fragmen diidentifikasi oleh URL yang terkandung dalam parameter pUrlPrefix. Panggilan ke fungsi ini dengan URL fragmen yang ada menimpa fragmen yang ada.
Fragmen dapat dihapus atau ditimpa oleh pemilik antrean permintaan yang awalnya menambahkan fragmen. FungsiHttpFlushResponseCacheyang disebut dengan UrlPrefix menghapus semua fragmen dalam awalan tersebut serta turunan hierarkis urlPrefix tersebut. Fungsi HttpReadFragmentFromCache dibaca di seluruh fragmen atau rentang byte tertentu dalam fragmen.
Nota
Menambahkan fragmen ke cache tidak menjamin bahwa itu tersedia untuk panggilan di masa mendatang untuk mengirim respons. Entri cache fragmen dapat menjadi tidak tersedia kapan saja. Panggilan yang menggunakan fragmen yang tidak tersedia gagal. Aplikasi yang menggunakan cache fragmen harus disiapkan untuk menangani kegagalan ini.
Mengirim Respons Dengan Fragmen
Fragmen dapat digunakan untuk membentuk semua atau sebagian isi entitas respons HTTP. Anda dapat mengirim respons dan badan entitas dalam satu panggilan ke fungsiHttpSendHttpResponse dengan menentukan array struktur HTTP_DATA_CHUNK dalam struktur HTTP_RESPONSE.
HTTP_DATA_CHUNK dapat menentukan blok memori, handel ke file yang sudah dibuka atau entri cache fragmen. Ini sesuai dengan jenis HTTP_DATA_CHUNK: HttpDataChunkFromMemory, HttpDataChunkFromFileHandle, dan HttpDataChunkFromFragmentCache, masing-masing. Respons penuh dalam cache HTTP juga dapat digunakan sebagai fragmen dalam struktur HTTP_RESPONSE, meskipun praktik ini tidak disarankan.
Struktur HTTP_RESPONSE berisi penunjuk ke array struktur HTTP_DATA_CHUNK yang terdiri dari isi entitas respons. Struktur HTTP_RESPONSE juga berisi jumlah pencocokan yang menentukan dimensi array struktur HTTP_DATA_CHUNK. Nilai HttpDataChunkFromFragmentCache dalam struktur HTTP_DATA_CHUNK menentukan jenis cache fragmen dari potongan data. Struktur HTTP_DATA_CHUNK juga menentukan nama fragmen.
Respons yang berisi fragmen cache gagal dengan ERROR_PATH_NOT_FOUND jika salah satu entri cache fragmen tidak tersedia. Karena entri cache fragmen tidak dijamin tersedia, aplikasi harus siap untuk menangani kasus ini. Salah satu cara untuk menangani kasus ini adalah dengan mencoba menambahkan kembali entri cache fragmen dan mengirim ulang respons. Jika kegagalan berulang terjadi, aplikasi dapat menggunakan potongan data yang disimpan dalam buffer memori alih-alih entri cache fragmen.
Entri cache fragmen juga dapat ditentukan dalam fungsiHttpSendResponseEntityBody. Fragmen ditambahkan ke badan entitas dalam struktur HTTP_DATA_CHUNK seperti yang dijelaskan di atas. Sekali lagi, pengiriman dapat gagal jika salah satu entri cache fragmen yang ditentukan tidak tersedia.