Bagaimana untuk Mencegah Caching Penyemak Imbas Keputusan Panggilan AJAX?

Susan Sarandon
Lepaskan: 2024-11-19 16:50:03
asal
347 orang telah melayarinya

How to Prevent Browser Caching of AJAX Call Results?

Mencegah Cache Penyemak Imbas Hasil Panggilan AJAX

Caching hasil panggilan AJAX boleh menimbulkan cabaran apabila bekerja dengan kandungan dinamik. Untuk mengatasinya, kami meneroka kaedah alternatif untuk menghalang penyemak imbas daripada caching.

Menggunakan Pilihan Cache jQuery

jQuery menyediakan penyelesaian yang mudah untuk melumpuhkan caching untuk semua permintaan AJAX yang akan datang . Dengan menggunakan fungsi $.ajaxSetup, anda boleh menentukan pilihan cache kepada false, menghalang sebarang panggilan AJAX berikutnya daripada dicache:

$.ajaxSetup({ cache: false });
Salin selepas log masuk

Alternatif kepada Random QueryString Strings

Walaupun menambahkan rentetan unik pada QueryString boleh menghalang caching, ia mungkin bukan pendekatan yang paling diingini. Sebaliknya, kaedah cap masa jQuery boleh menghasilkan cap masa yang unik untuk ditambahkan pada URL permintaan, memastikan bahawa hasilnya tidak dicache:

$.ajax({
    url: 'some.php',
    method: 'GET',
    data: { timestamp: $.now() }
});
Salin selepas log masuk

Mencipta Pengepala Tersuai

Satu lagi pilihan adalah untuk menetapkan pengepala tersuai untuk permintaan untuk mengelakkan caching. Sebagai contoh, menggunakan pengepala berikut akan mengarahkan penyemak imbas untuk tidak cache respons:

cache-control: no-cache, no-store
pragma: no-cache
Salin selepas log masuk

Kod Status HTTP

Kod status HTTP khusus juga boleh digunakan untuk menunjukkan bahawa sumber tidak boleh dicache. Menetapkan pengepala Kawalan Cache kepada max-age=0 atau no-store akan menghalang caching.

Cross-Origin Resource Sharing (CORS)

Apabila permintaan AJAX dibuat dibuat merentas domain, CORS boleh mengganggu tingkah laku caching. Jika anda mengalami isu caching dalam permintaan silang asal, pertimbangkan untuk menggunakan pengepala Kawalan Cache yang dinyatakan di atas atau meneroka tetapan berkaitan CORS untuk pelayan anda.

Atas ialah kandungan terperinci Bagaimana untuk Mencegah Caching Penyemak Imbas Keputusan Panggilan AJAX?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan