Convertendo Imagens para JPEG usando Node.js e Apidog

Você está criando um aplicativo web e precisa permitir que os usuários façam upload de imagens. No entanto, há uma condição: todas as imagens devem estar no formato JPEG por questões de consistência e desempenho. Como você pode converter as imagens enviadas pelos usuários para JPEG em tempo real?

Miguel Oliveira

Miguel Oliveira

7 agosto 2025

Convertendo Imagens para JPEG usando Node.js e Apidog

Apidog para empresas

Implantação local

SSO & RBAC

Conforme SOC 2

Explorar Apidog Enterprise

Você está construindo uma aplicação web e precisa permitir que os usuários enviem imagens. Mas há uma condição: você precisa que todas as imagens estejam no formato JPEG por motivos de consistência e desempenho. Como você pode converter as imagens enviadas pelos usuários para JPEG em tempo real?

Neste tutorial, vamos explorar como configurar um servidor backend usando Node.js e Express.js para converter imagens para o formato JPEG. Vamos utilizar a poderosa biblioteca Sharp para processamento de imagens e demonstrar como lidar com solicitações de conversão de imagens de um cliente front-end ou ferramenta de gerenciamento de API, como Apidog.

Pré-requisitos:

Antes de começar, certifique-se de ter o Node.js e o npm (Node Package Manager) instalados em seu sistema. Você pode baixá-los e instalá-los no site oficial do Node.js.

Configuração do Backend;

Vamos começar criando uma nova pasta para o nosso projeto e inicializando o npm.

mkdir image-conversion-backend
cd image-conversion-backend
npm init -y

Em seguida, instale as dependências necessárias: Express, Cors, Multer e Sharp.

npm install express cors multer sharp

Com as dependências instaladas, vamos criar um index.js onde definiremos nosso servidor Express.

const cors = require("cors");
const express = require('express');
const multer = require('multer');
const sharp = require('sharp');

const app = express();
const port = process.env.PORT || 8080;

// Configurar Multer para lidar com uploads de arquivos
const storage = multer.memoryStorage();
const upload = multer({ storage: storage });

// Habilitar o Compartilhamento de Recursos de Origem Cruzada (CORS)
app.use(cors());

// Analisar corpos JSON
app.use(express.json());

// Definir rota para conversão de imagem
app.post('/convert', upload.single('image'), async (req, res) => {
    try {
        // Usar Sharp para converter a imagem enviada para o formato JPEG
        const buffer = await sharp(req.file.buffer).toFormat('jpg').toBuffer();

        // Enviar a imagem convertida como resposta
        res.send(buffer);
    } catch (error) {
        console.error('Erro de conversão:', error);
        res.status(500).send('A conversão falhou');
    }
});

// Iniciar o servidor
app.listen(port, () => {
    console.log(`Servidor está rodando na porta ${port}`);
});

Entendendo o Código;

Vamos analisar os principais componentes da nossa aplicação backend:

Executando o Servidor Backend

Para executar o servidor backend, navegue até o diretório do seu projeto no terminal e execute o seguinte comando:

node index.js

Uma imagem mostrando o servidor em funcionamento...

Seu servidor backend agora está ativo e pronto para lidar com solicitações de conversão de imagens.

Agora, você pode usar uma ferramenta front-end como react, vue.js ou até mesmo o método Fetch do vanilla js para enviar uma solicitação do front-end para o servidor e testar as coisas. Isso deve funcionar. Neste guia, no entanto, como mencionei antes, usaremos o Apidog.

Começando com Apidog

Uma imagem mostrando o design da homepage do apidog

Para aqueles que não sabem o que é Apidog, Apidog é uma plataforma de colaboração integrada para documentação de API, depuração de API, simulação de API e teste automatizado de API. Para aqueles que já ouviram falar ou usaram o Postman antes, o Apidog oferece muito mais do que o Postman, tornando-se a ferramenta ideal de gerenciamento de API para testar suas APIs.

botão

Você pode usar o link acima para baixar ou criar uma conta para começar. Depois que sua conta foi criada, o próximo passo é enviar uma solicitação POST para o seu servidor backend já em funcionamento para converter as imagens para jpeg.

Quando você cria uma conta no Apidog, um novo time/espaco de trabalho é automaticamente criado para você. Você pode criar projetos ou continuar com o projeto padrão gerado para você. Neste exemplo, vou usar o projeto já criado e criar uma nova solicitação para testar nosso código de backend.

Uma imagem apontando para "request" no apidog

Quando você clicar no botão de solicitação, você verá uma interface para enviar sua primeira solicitação.

A primeira coisa a fazer é mudar o tipo de solicitação de GET para POST. Atualize a URL com a URL do servidor local - localhost:8080 no meu caso.

Em seguida, clique na seção "Corpo" e selecione dados do formulário. Ao selecionar dados do formulário, você poderá selecionar e enviar imagens diretamente para o Apidog para testar a conversão. Agora, dê ao dado do formulário o nome "Imagem", tipo "arquivo" e faça o upload da imagem para converter.

Uma vez feito isso, clique no botão Enviar no canto superior direito para enviar a solicitação. Se tudo correr bem, você deve ver uma resposta 200 e o arquivo para baixar.

Tela de download de arquivo do Apidog

É importante notar que, quando você baixar o arquivo, verá um arquivo response.bin. Ao visualizar a propriedade, você descobrirá que é um arquivo .jpg. E essa é a sua imagem convertida.

Conclusão

Acabamos de ver como converter imagens de .png ou qualquer outro formato para .jpeg usando node.js e, em seguida, testando as coisas com Apidog.

O Apidog nos deu a capacidade e flexibilidade de testar a API sem depender de qualquer ferramenta ou framework front-end.

Explore more

Como acessar a API do Claude 3.7 Sonnet e testar usando Apidog

Como acessar a API do Claude 3.7 Sonnet e testar usando Apidog

Se você está empolgado com o último lançamento da Anthropic, Claude 3.7 Sonnet, e quer explorar suas capacidades através da API enquanto o testa com o Apidog, você está no lugar certo. 💡Antes de começarmos, deixe-me fazer uma rápida observação: baixe o Apidog gratuitamente hoje e otimize seu processo de teste de API, especialmente para explorar os poderosos recursos do Claude 3.7 Sonnet—perfeito para desenvolvedores que desejam testar modelos de IA de ponta como este!botão Vamos começar com a

25 fevereiro 2025

Como passar o x-API-key no cabeçalho?

Como passar o x-API-key no cabeçalho?

Desvende os segredos da segurança eficaz de APIs, dominando como passar x-API-key nos cabeçalhos. Este guia abrangente revelará a importância desse processo e como ferramentas como o Apidog podem facilitar seus esforços. Continue lendo para garantir que suas interações com a API permaneçam seguras!

12 agosto 2024

Como corrigir o erro HTTP 405 Método Não Permitido no Postman

Como corrigir o erro HTTP 405 Método Não Permitido no Postman

O código de erro HTTP 405 ocorre quando você tenta acessar um servidor usando uma chave de API ou token de acesso inválido ou ausente. Neste artigo, veremos mais sobre o erro 405 e como corrigi-lo.

11 agosto 2024

Pratique o design de API no Apidog

Descubra uma forma mais fácil de construir e usar APIs