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
.
- 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
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');
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";
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
Quando você carrega uma imagem local, os dados do formulário precisam incluir o cabeçalho
Content-Disposition
. Defina o parâmetroname
como "imagem" e o parâmetrofilename
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--
Crie um objeto
FormData
comFormData()
e acrescente o caminho da imagem a ele usandofs.createReadStream()
.var form = new FormData(); form.append("image", fs.createReadStream(imagePath));
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); });