Maison >interface Web >js tutoriel >Comment puis-je vérifier si une image existe sur un serveur utilisant JavaScript ?

Comment puis-je vérifier si une image existe sur un serveur utilisant JavaScript ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-19 08:48:02997parcourir

How Can I Check if an Image Exists on a Server Using JavaScript?

Détection de la disponibilité d'une image sur un serveur avec JavaScript

Il est souvent nécessaire de vérifier l'existence d'une ressource, telle qu'une image, sur un serveur. Dans cet article, nous allons explorer comment vérifier si une image existe sur un serveur à l'aide de JavaScript.

Solution :

Pour déterminer si une image est présente sur le serveur, nous pouvons exploiter XMLHttpRequest de JavaScript. (XHR) pour envoyer une requête HEAD. La requête HEAD récupère les en-têtes HTTP pour une ressource spécifiée sans télécharger le contenu réel. Si le code d'état HTTP n'est pas 404 (introuvable), cela indique que l'image existe sur le serveur.

Une façon d'implémenter cette solution est :

function imageExists(image_url) {
  var http = new XMLHttpRequest();

  http.open('HEAD', image_url, false);
  http.send();

  return http.status != 404;
}

En utilisant jQuery, vous peut simplifier la solution :

$.get(image_url)
  .done(function() {
    // Do something now you know the image exists.
  })
  .fail(function() {
    // Image doesn't exist - do something else.
  })

Exemple :

Pour utiliser cette méthode, vous pouvez remplacer votre code à gratter par :

if (imageExists("../imgs/6.jpg")) {
  var nImg = document.createElement("img6");
  nImg.src = "../imgs/6.jpg";
}

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