Delen via


Quickstart: Afbeeldingsinzichten krijgen met behulp van de Bing Visual Search REST-API en Node.js

Waarschuwing

Op 30 oktober 2020 zijn de Zoeken in Bing API's verplaatst van Azure AI-services naar Zoeken in Bing Services. Deze documentatie is alleen bedoeld ter referentie. Zie de bing-documentatie voor zoeken-API voor bijgewerkte documentatie. Zie Een Zoeken in Bing-resource maken via de Azure Marketplace voor instructies over het maken van nieuwe Azure-resources voor Bing Search.

Gebruik deze quickstart om uw eerste aanroep naar de Bing Visual Search-API te maken. Met deze eenvoudige JavaScript-toepassing wordt er een afbeelding naar de API geüpload, waarna de geretourneerde gegevens van de afbeelding worden weergegeven. Hoewel deze toepassing in JavaScript is geschreven, is de API een RESTful-webservice die compatibel is met vrijwel elke programmeertaal.

Vereisten

  • Node.js
  • De Request-module voor JavaScript. U kunt de opdracht npm install request gebruiken om de module te installeren.
  • The module form-data. U kunt de opdracht npm install form-data gebruiken om de module te installeren.

Een Azure-resource maken

Begin met het gebruik van de Bing Visual Search-API door een van de volgende Azure-resources te maken:

Bing Search v7-resource

  • Beschikbaar via de Azure-portal totdat u de resource verwijdert.
  • Controleer de prijscategorie S9.

Resource met meerdere services

  • Beschikbaar via de Azure-portal totdat u de resource verwijdert.
  • Gebruik dezelfde sleutel en hetzelfde eindpunt voor uw toepassingen, in meerdere Azure AI-services.

De toepassing initialiseren

  1. Maak een JavaScript-bestand in uw favoriete IDE of editor en stel de volgende vereisten in:

    var request = require('request');
    var FormData = require('form-data');
    var fs = require('fs');
    
  2. Maak variabelen voor uw API-eindpunt, abonnementssleutel en het pad naar uw afbeelding. Voor de baseUri-waarde kunt u het globale eindpunt in de volgende code gebruiken of het eindpunt voor het aangepaste subdomein gebruiken dat voor uw resource wordt weergegeven in de Azure-portal.

    var baseUri = 'https://api.cognitive.microsoft.com/bing/v7.0/images/visualsearch';
    var subscriptionKey = 'your-api-key';
    var imagePath = "path-to-your-image";
    
  3. Maak een functie met de naam requestCallback() om het antwoord van de API weer te geven.

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

De zoekaanvraag samenstellen en verzenden

  1. Wanneer u een lokale afbeelding uploadt, moeten de formuliergegevens de header Content-Disposition bevatten. Stel de parameter name in op 'afbeelding' en stel de parameter filename in op de bestandsnaam van de afbeelding. De inhoud van het formulier bevat de binaire gegevens van de afbeelding. De maximale afbeeldingsgrootte die u kunt uploaden is 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. Maak een nieuw FormData-object met FormData() en voeg het afbeeldingspad hieraan toe met behulp van fs.createReadStream().

    var form = new FormData();
    form.append("image", fs.createReadStream(imagePath));
    
  3. Gebruik de aanvragenbibliotheek om de afbeelding te uploaden en roep requestCallback() aan om het antwoord weer te geven. Voeg de abonnementssleutel toen aan de aanvraagheader.

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

Volgende stappen