Partager via


Démarrage rapide : Obtenir des insights sur les images à l’aide de l’API REST Recherche visuelle Bing et de Node.js

Avertissement

Le 30 octobre 2020, les API de recherche Bing sont passées des services Azure AI aux services de recherche Bing. Cette documentation est fournie à des fins de référence uniquement. Pour accéder à la documentation mise à jour, consultez la documentation de l’API Recherche Bing. Pour obtenir des instructions sur la création de nouvelles ressources Azure pour Recherche Bing, consultez Créer une ressource Recherche Bing à l’aide de Place de marché Azure.

Utilisez ce guide de démarrage rapide pour effectuer votre premier appel à l’API Recherche visuelle Bing. Cette application JavaScript simple charge une image dans l’API et affiche les informations retournées à son sujet. Bien que cette application soit écrite en JavaScript, l’API est un service web RESTful compatible avec la plupart des langages de programmation.

Prérequis

  • Node.JS
  • Le module Request pour JavaScript. Vous pouvez utiliser la commande npm install request pour installer le module.
  • Le module form-data. Vous pouvez utiliser la commande npm install form-data pour installer le module.

Créer une ressource Azure

Commencez à utiliser l’API Recherche visuelle Bing en créant une des ressources Azure suivantes :

Ressource Recherche Bing v7

  • Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
  • Sélectionnez le niveau tarifaire S9.

Ressource multiservice

  • Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
  • Utilisez la même clé et le même point de terminaison pour vos applications, sur plusieurs services Azure AI.

Initialiser l’application

  1. Créez un fichier JavaScript dans votre IDE ou votre éditeur favori, puis définissez les exigences suivantes :

    var request = require('request');
    var FormData = require('form-data');
    var fs = require('fs');
    
  2. Créez des variables pour le point de terminaison de l’API, la clé d’abonnement et le chemin de votre image. Pour la valeur baseUri, vous pouvez utiliser le point de terminaison global ci-dessous, ou le point de terminaison de sous-domaine personnalisé affiché dans le portail Azure pour votre ressource.

    var baseUri = 'https://api.cognitive.microsoft.com/bing/v7.0/images/visualsearch';
    var subscriptionKey = 'your-api-key';
    var imagePath = "path-to-your-image";
    
  3. Créez une fonction nommée requestCallback() pour afficher la réponse de l’API.

    function requestCallback(err, res, body) {
        console.log(JSON.stringify(JSON.parse(body), null, '  '))
    }
    

Construire et envoyer la demande de recherche

  1. Quand vous chargez une image locale, les données de formulaire doivent inclure l’en-tête Content-Disposition. Définissez son paramètre name sur « image » et le paramètre filename sur le nom de fichier de votre image. Le contenu du formulaire inclut les données binaires de l’image. La taille maximale de l’image que vous chargez est de 1 Mo.

    --boundary_1234-abcd
    Content-Disposition: form-data; name="image"; filename="myimagefile.jpg"
    
    ÿØÿà JFIF ÖÆ68g-¤CWŸþ29ÌÄøÖ‘º«™æ±èuZiÀ)"óÓß°Î= ØJ9á+*G¦...
    
    --boundary_1234-abcd--
    
  2. Créez un objet FormData avec FormData() et ajoutez le chemin de votre image à l’aide de fs.createReadStream().

    var form = new FormData();
    form.append("image", fs.createReadStream(imagePath));
    
  3. Utilisez la bibliothèque de demandes pour charger l’image, et appelez requestCallback() pour afficher la réponse. Ajoutez votre clé d’abonnement à l’en-tête de la demande.

    form.getLength(function(err, length){
      if (err) {
        return requestCallback(err);
      }
      var r = request.post(baseUri, requestCallback);
      r._form = form; 
      r.setHeader('Ocp-Apim-Subscription-Key', subscriptionKey);
    });
    

Étapes suivantes