Rövid útmutató: Képelemzések lekérése a Bing Visual Search REST API és Node.js használatával

Figyelmeztetés

2020. október 30-án a Bing Search API-k átkerültek a Cognitive Servicesből Bing Search Servicesbe. Ez a dokumentáció csak referenciaként érhető el. A frissített dokumentációért tekintse meg a Bing search API dokumentációját. Az új Azure-erőforrások Bing kereséshez való létrehozásával kapcsolatos utasításokért lásd: Bing Search-erőforrás létrehozása a Azure Marketplace.

Ezzel a rövid útmutatóval kezdeményezheti az első hívást a Bing Visual Search API-hoz. Ez az egyszerű JavaScript-alkalmazás feltölt egy képet az API-ba, és megjeleníti a visszaadott információkat. Bár ez az alkalmazás JavaScript nyelven van megírva, az API egy RESTful-webszolgáltatás, amely kompatibilis a legtöbb programozási nyelvvel.

Előfeltételek

  • Node.js
  • A JavaScript kérés modulja. A modul telepítéséhez használhatja npm install request a parancsot.
  • Az űrlap-adatok modul. A parancs használatával npm install form-data telepítheti a modult.

Azure-erőforrás létrehozása

Kezdje el használni a Bing Visual Search API-t az alábbi Azure-erőforrások egyikének létrehozásával:

Bing Search v7 erőforrás

  • A Azure Portal keresztül érhető el, amíg nem törli az erőforrást.
  • Válassza ki a tarifacsomagot S9 .

Többszolgáltatásos erőforrás

  • A Azure Portal keresztül érhető el, amíg nem törli az erőforrást.
  • Használja ugyanazt a kulcsot és végpontot az alkalmazásokhoz több Cognitive Services-szolgáltatásban.

Az alkalmazás inicializálása

  1. Hozzon létre egy JavaScript-fájlt a kedvenc IDE-környezetében vagy szerkesztőjében, és állítsa be a következő követelményeket:

    var request = require('request');
    var FormData = require('form-data');
    var fs = require('fs');
    
  2. Hozzon létre változókat az API-végponthoz, az előfizetői azonosítóhoz és a rendszerkép elérési útjához. baseUri Az értékhez használhatja a globális végpontot a következő kódban, vagy használhatja az erőforráshoz tartozó Azure Portal megjelenő egyéni altartományvégpontot.

    var baseUri = 'https://api.cognitive.microsoft.com/bing/v7.0/images/visualsearch';
    var subscriptionKey = 'your-api-key';
    var imagePath = "path-to-your-image";
    
  3. Hozzon létre egy függvényt requestCallback() az API válaszának nyomtatásához.

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

A keresési kérelem összeállítása és elküldése

  1. Helyi kép feltöltésekor az űrlapadatoknak tartalmazniuk kell a fejlécet Content-Disposition . Állítsa a paramétert name "image" értékre, és állítsa a filename paramétert a kép fájlnevére. Az űrlap tartalma tartalmazza a kép bináris adatait. A maximális feltölthető képméret 1 MB.

    --boundary_1234-abcd
    Content-Disposition: form-data; name="image"; filename="myimagefile.jpg"
    
    ÿØÿà JFIF ÖÆ68g-¤CWŸþ29ÌÄøÖ‘º«™æ±èuZiÀ)"óÓß°Î= ØJ9á+*G¦...
    
    --boundary_1234-abcd--
    
  2. Hozzon létre egy új FormData objektumot a következővel FormData(), és fűzze hozzá a kép elérési útját a használatával fs.createReadStream().

    var form = new FormData();
    form.append("image", fs.createReadStream(imagePath));
    
  3. A kérelemtár használatával töltse fel a képet, és hívja meg requestCallback() a választ. Adja hozzá az előfizetői azonosítót a kérelem fejlécéhez.

    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);
    });
    

Következő lépések