Maison >interface Web >js tutoriel >Comment puis-je vérifier l'existence d'un fichier serveur à l'aide de jQuery ou JavaScript ?

Comment puis-je vérifier l'existence d'un fichier serveur à l'aide de jQuery ou JavaScript ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-07 11:56:12907parcourir

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

Comment vérifier l'existence d'un fichier serveur à l'aide de jQuery ou JavaScript

La vérification de la présence d'un fichier serveur est une tâche courante dans développement web. jQuery et JavaScript offrent des solutions simples pour y parvenir :

Méthode jQuery :

jQuery utilise une requête Ajax avec la méthode HEAD, qui envoie une requête au serveur pour récupérer métadonnées sur le fichier sans réellement télécharger son contenu. Si le serveur renvoie une erreur (par exemple 404), le fichier n'existe pas ; sinon, c'est le cas.

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

Méthode JavaScript pure (sans jQuery) :

Cette méthode utilise l'objet XMLHttpRequest pour envoyer une requête HEAD. Un code d'état de 404 indique que le fichier n'existe pas ; tout autre code d'état suggère son existence.

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

Approche mise à jour pour l'exécution asynchrone :

Étant donné que XMLHttpRequest synchrone est obsolète, une méthode utilitaire asynchrone peut être utilisée :

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

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn