Sdílet prostřednictvím


Rychlý start: Získání přehledů o obrázku pomocí rozhraní REST API pro vizuální vyhledávání Bingu a Node.js

Upozornění

30. října 2020 se rozhraní API Vyhledávání Bingu přesunula ze služeb Azure AI na Vyhledávání Bingu Services. Tato dokumentace je k dispozici pouze pro referenci. Aktualizovanou dokumentaci najdete v dokumentaci k rozhraní API Bingu pro vyhledávání. Pokyny k vytváření nových prostředků Azure pro vyhledávání Bingu najdete v tématu Vytvoření prostředku Vyhledávání Bingu prostřednictvím Azure Marketplace.

Pomocí tohoto rychlého startu můžete provést první volání rozhraní API pro vizuální vyhledávání Bingu. Tato jednoduchá javascriptová aplikace nahraje do rozhraní API obrázek a zobrazí o něm vrácené informace. I když je tato aplikace napsaná v JavaScriptu, rozhraní API je webová služba RESTful kompatibilní s většinou programovacích jazyků.

Požadavky

  • Node.js
  • Modul Request (Žádost) pro JavaScript. K instalaci modulu můžete použít npm install request příkaz .
  • Modul form-data. K instalaci modulu můžete použít npm install form-data příkaz .

Vytvoření prostředku Azure

Začněte používat rozhraní API pro vizuální vyhledávání Bingu vytvořením jednoho z následujících prostředků Azure:

prostředek Vyhledávání Bingu v7

  • K dispozici prostřednictvím Azure Portal, dokud prostředek neodstraníte.
  • Vyberte cenovou S9 úroveň.

Prostředek s více službami

  • K dispozici prostřednictvím Azure Portal, dokud prostředek neodstraníte.
  • Pro své aplikace použijte stejný klíč a koncový bod napříč několika službami Azure AI.

Inicializace aplikace

  1. Ve svém oblíbeném integrovaném vývojovém prostředí nebo editoru vytvořte soubor JavaScriptu a nastavte následující požadavky:

    var request = require('request');
    var FormData = require('form-data');
    var fs = require('fs');
    
  2. Vytvořte proměnné pro koncový bod rozhraní API, klíč předplatného a cestu k imagi. baseUri Jako hodnotu můžete použít globální koncový bod v následujícím kódu nebo vlastní koncový bod subdomény zobrazený v Azure Portal pro váš prostředek.

    var baseUri = 'https://api.cognitive.microsoft.com/bing/v7.0/images/visualsearch';
    var subscriptionKey = 'your-api-key';
    var imagePath = "path-to-your-image";
    
  3. Vytvořte funkci s názvem requestCallback() , která vytiskne odpověď z rozhraní API.

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

Vytvoření a odeslání požadavku hledání

  1. Když nahrajete místní obrázek, musí data formuláře obsahovat Content-Disposition záhlaví. Nastavte jeho name parametr na image a parametr filename nastavte na název souboru image. Obsah formuláře zahrnuje binární data obrázku. Maximální velikost obrázku, kterou můžete nahrát, je 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. Vytvořte nový FormData objekt pomocí FormData()a připojte k němu cestu k obrázku pomocí fs.createReadStream()příkazu .

    var form = new FormData();
    form.append("image", fs.createReadStream(imagePath));
    
  3. Použijte knihovnu žádostí k nahrání obrázku a voláním vytiskněte requestCallback() odpověď. Přidejte klíč předplatného do hlavičky požadavku.

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

Další kroky