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 :
- Disponible via le portail Azure jusqu’à ce que vous supprimiez la ressource.
- Sélectionnez le niveau tarifaire
S9
.
- 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
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');
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";
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
Quand vous chargez une image locale, les données de formulaire doivent inclure l’en-tête
Content-Disposition
. Définissez son paramètrename
sur « image » et le paramètrefilename
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--
Créez un objet
FormData
avecFormData()
et ajoutez le chemin de votre image à l’aide defs.createReadStream()
.var form = new FormData(); form.append("image", fs.createReadStream(imagePath));
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); });