Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Semak Kewujudan Fail Pelayan Menggunakan jQuery atau JavaScript?

Bagaimanakah Saya Boleh Semak Kewujudan Fail Pelayan Menggunakan jQuery atau JavaScript?

Susan Sarandon
Susan Sarandonasal
2024-12-07 11:56:12910semak imbas

How Can I Check for a Server File's Existence Using jQuery or JavaScript?

Cara Memastikan Kewujudan Fail Pelayan Menggunakan jQuery atau JavaScript

Menyemak kehadiran fail pelayan adalah tugas biasa dalam pembangunan web. jQuery dan JavaScript menawarkan penyelesaian mudah untuk mencapai ini:

Kaedah jQuery:

jQuery menggunakan permintaan Ajax dengan kaedah HEAD, yang menghantar permintaan kepada pelayan untuk mendapatkan semula metadata tentang fail tanpa memuat turun kandungannya sebenarnya. Jika pelayan mengembalikan ralat (cth., 404), fail itu tidak wujud; jika tidak, ia berlaku.

$.ajax({
    url:'http://www.example.com/somefile.ext',
    type:'HEAD',
    error: function() {
        //file not exists
    },
    success: function() {
        //file exists
    }
});

Kaedah JavaScript Tulen (tanpa jQuery):

Kaedah ini menggunakan objek XMLHttpRequest untuk menghantar permintaan HEAD. Kod status 404 menunjukkan bahawa fail itu tidak wujud; mana-mana kod status lain mencadangkan kewujudannya.

function UrlExists(url) {
    var http = new XMLHttpRequest();
    http.open('HEAD', url, false);
    http.send();
    return http.status != 404;
}

Pendekatan Kemas Kini untuk Pelaksanaan Asynchronous:

Oleh kerana XMLHttpRequest segerak ditamatkan, kaedah utiliti tak segerak boleh digunakan:

function executeIfFileExist(src, callback) {
    var xhr = new XMLHttpRequest()
    xhr.onreadystatechange = function() {
        if (this.readyState === this.DONE) {
            callback()
        }
    }
    xhr.open('HEAD', src)
}

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Semak Kewujudan Fail Pelayan Menggunakan jQuery atau JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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