Share via


Início Rápido: Obtenha insights de imagem usando a API REST da Pesquisa Visual do Bing e o Node.js

Aviso

Em 30 de outubro de 2020, as APIs de Pesquisa do Bing foram migradas dos serviços de IA do Azure para os Serviços de Pesquisa do Bing. Esta documentação é fornecida apenas para referência. Para obter a documentação atualizada, consulte a documentação da API de pesquisa do Bing. Para obter instruções sobre como criar novos recursos do Azure para a Pesquisa do Bing, consulte Criar um recurso de Pesquisa do Bing por meio do Azure Marketplace.

Use este início rápido para fazer sua primeira chamada à API da Pesquisa Visual do Bing. Este aplicativo JavaScript simples carrega uma imagem para a API e exibe as informações retornadas sobre ela. Embora esse aplicativo seja escrito em JavaScript, a API é um serviço Web RESTful compatível com a maioria das linguagens de programação.

Pré-requisitos

  • Node.js
  • O módulo de Solicitação para JavaScript. Use o comando npm install request para instalar o módulo.
  • O módulo de dados de formulário. Use o comando npm install form-data para instalar o módulo.

Criar um recurso do Azure

Comece a usar a API da Pesquisa Visual do Bing criando um dos seguintes recursos do Azure:

Recurso de Pesquisa do Bing v7

  • Disponível por meio do portal do Azure até que você exclua o recurso.
  • Selecione o tipo de preço S9.

Recurso de vários serviços

  • Disponível por meio do portal do Azure até que você exclua o recurso.
  • Use a mesma chave e ponto de extremidade para seus aplicativos nos vários serviços de IA do Azure.

Inicializar o aplicativo

  1. Crie um arquivo JavaScript em seu IDE ou editor favorito e defina os seguintes requisitos:

    var request = require('request');
    var FormData = require('form-data');
    var fs = require('fs');
    
  2. Crie variáveis para seu ponto de extremidade de API, a chave de assinatura e o caminho para a imagem. Para o valor baseUri, você pode usar o ponto de extremidade global no código a seguir ou usar o ponto de extremidade do subdomínio personalizado exibido no portal do Azure para seu recurso.

    var baseUri = 'https://api.cognitive.microsoft.com/bing/v7.0/images/visualsearch';
    var subscriptionKey = 'your-api-key';
    var imagePath = "path-to-your-image";
    
  3. Crie uma função chamada requestCallback() para imprimir a resposta da API.

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

Construir e enviar a solicitação de pesquisa

  1. Quando você carrega uma imagem local, os dados do formulário precisam incluir o cabeçalho Content-Disposition. Defina o parâmetro name como "imagem" e o parâmetro filename como o nome de arquivo da sua imagem. O conteúdo do formulário inclui os dados binários da imagem. O tamanho máximo da imagem que pode ser carregada é 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. Crie um objeto FormData com FormData() e acrescente o caminho da imagem a ele usando fs.createReadStream().

    var form = new FormData();
    form.append("image", fs.createReadStream(imagePath));
    
  3. Use a biblioteca de solicitação para carregar a imagem e chame requestCallback() para imprimir a resposta. Adicione sua chave de assinatura ao cabeçalho de solicitação.

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

Próximas etapas