Guida introduttiva: Ottenere informazioni dettagliate sulle immagini usando l'API REST Ricerca visiva Bing e Node.js
Avviso
Il 30 ottobre 2020 le API di Ricerca Bing spostate dai servizi di intelligenza artificiale di Azure ai servizi Ricerca Bing. Questa documentazione viene fornita solo per informazioni di riferimento. Per la documentazione aggiornata, vedere la documentazione dell'API di ricerca Bing. Per istruzioni sulla creazione di nuove risorse di Azure per la ricerca Bing, vedere Creare una risorsa Ricerca Bing tramite la Azure Marketplace.
Usare questa guida di avvio rapido per effettuare la prima chiamata all'API Ricerca visiva Bing. Questa semplice applicazione JavaScript carica un'immagine nell'API e visualizza le informazioni restituite. Anche se l'applicazione è scritta in JavaScript, l'API è un servizio Web RESTful compatibile con la maggior parte dei linguaggi di programmazione.
Prerequisiti
- Node.js
- Modulo di richiesta per JavaScript. È possibile usare il comando
npm install request
per installare il modulo. - Modulo form-data. È possibile usare il comando
npm install form-data
per installare il modulo.
Creare una risorsa di Azure
Per iniziare a usare l'API Ricerca visiva Bing, creare una delle seguenti risorse di Azure:
- disponibile tramite il portale di Azure fino a quando la risorsa non viene eliminata.
- Selezionare il piano tariffario
S9
.
- disponibile tramite il portale di Azure fino a quando la risorsa non viene eliminata.
- Usare la stessa chiave e l'endpoint per le applicazioni in più servizi di intelligenza artificiale di Azure.
Inizializzare l'applicazione
Creare un file JavaScript nell'ambiente di sviluppo integrato o nell'editor preferito e impostare i requisiti seguenti:
var request = require('request'); var FormData = require('form-data'); var fs = require('fs');
Creare variabili per l'endpoint dell'API, la chiave di sottoscrizione e il percorso dell'immagine. Per il valore di
baseUri
, è possibile usare l'endpoint globale nel codice seguente o l'endpoint del sottodominio personalizzato visualizzato nel portale di Azure per la risorsa.var baseUri = 'https://api.cognitive.microsoft.com/bing/v7.0/images/visualsearch'; var subscriptionKey = 'your-api-key'; var imagePath = "path-to-your-image";
Creare una funzione denominata
requestCallback()
per visualizzare la risposta dell'API.function requestCallback(err, res, body) { console.log(JSON.stringify(JSON.parse(body), null, ' ')) }
Costruire e inviare la richiesta di ricerca
Quando si carica un'immagine locale, i dati del modulo devono includere l'intestazione
Content-Disposition
. Impostare il parametroname
su "image" e il parametrofilename
sul nome file dell'immagine. Il contenuto del modulo include i dati binari dell'immagine. La dimensione massima delle immagini che è possibile caricare è 1 MB.--boundary_1234-abcd Content-Disposition: form-data; name="image"; filename="myimagefile.jpg" ÿØÿà JFIF ÖÆ68g-¤CWŸþ29ÌÄøÖ‘º«™æ±èuZiÀ)"óÓß°Î= ØJ9á+*G¦... --boundary_1234-abcd--
Creare un nuovo oggetto
FormData
conFormData()
e accodare il percorso dell'immagine usandofs.createReadStream()
.var form = new FormData(); form.append("image", fs.createReadStream(imagePath));
Usare la libreria di richieste per caricare l'immagine e chiamare
requestCallback()
per stampare la risposta. Aggiungere la chiave di sottoscrizione all'intestazione della richiesta.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); });