Simulando um Backend em React com json-server

Aprenda a usar json-server para simular um backend em projetos React de forma prática e eficiente.

Como utilizar json-server para simular um backend em desenvolvimento no React

Quando se fala em desenvolvimento de aplicações web, a interação com um backend é uma parte fundamental. Entretanto, durante a fase de desenvolvimento, pode ser desafiador configurar um backend real. É aqui que o json-server se torna uma ferramenta poderosa e prática.

O que é json-server?

json-server é uma biblioteca que permite criar um servidor RESTful simples e simulado a partir de um arquivo JSON. Isso significa que você pode desenvolver sua aplicação React consumindo dados de uma API sem a necessidade de um backend real. Com json-server, você pode simular operações de CRUD (Create, Read, Update, Delete) facilmente.

Instalando o json-server

Para começar, você precisa ter o Node.js instalado em seu sistema. Após garantir isso, você pode instalar o json-server globalmente usando o seguinte comando:

npm install -g json-server

Esse comando instala o json-server e o torna disponível em qualquer lugar do seu sistema. Agora você pode criar um arquivo JSON que servirá como seu banco de dados.

Criando o arquivo db.json

Você deve criar um arquivo chamado db.json no diretório do seu projeto com a seguinte estrutura:

{
  "posts": [
    { "id": 1, "title": "Post 1", "content": "Conteúdo do Post 1" },
    { "id": 2, "title": "Post 2", "content": "Conteúdo do Post 2" }
  ],
  "comments": [
    { "id": 1, "postId": 1, "content": "Comentário 1" }
  ]
}

Neste arquivo, temos duas coleções: posts e comments. Isso permite que você crie uma estrutura de dados que pode ser utilizada para simular operações em sua aplicação React.

Rodando o json-server

Para iniciar o servidor, execute o seguinte comando no terminal:

json-server --watch db.json

Isso fará com que o json-server inicie e comece a monitorar alterações no seu arquivo db.json. Por padrão, ele estará disponível em http://localhost:3000. Você pode acessar suas coleções através de URLs como http://localhost:3000/posts e http://localhost:3000/comments.

Integrando json-server com React

Agora que temos o json-server rodando, o próximo passo é integrar isso com uma aplicação React. Vamos criar um componente simples que faz uma requisição para buscar os posts.

import React, { useEffect, useState } from 'react';

const Posts = () => {
  const [posts, setPosts] = useState([]);

  useEffect(() => {
    fetch('http://localhost:3000/posts')
      .then(response => response.json())
      .then(data => setPosts(data));
  }, []);

  return (
    <div>
      <h2>Lista de Posts</h2>
      <ul>
        {posts.map(post => (
          <li key={post.id}>{post.title}</li>
        ))}
      </ul>
    </div>
  );
};

export default Posts;

Nesse componente, utilizamos o hook useEffect para realizar a chamada à API do json-server assim que o componente é montado. Os dados retornados são armazenados no estado posts e exibidos em uma lista. Isso permite que você veja os posts que foram definidos no seu arquivo db.json diretamente na sua aplicação React.

Manipulando dados com json-server

Além de ler dados, você também pode enviar requisições para criar, atualizar ou deletar dados. Por exemplo, para adicionar um novo post, você pode fazer uma requisição POST:

fetch('http://localhost:3000/posts', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({ title: 'Novo Post', content: 'Conteúdo do Novo Post' })
});

Esse código envia um novo post para o json-server. Após a execução, esse novo post estará disponível na lista de posts.

Conclusão

O json-server é uma solução excepcional para simular um backend durante o desenvolvimento de aplicações React. Com ele, você pode focar na construção da interface e lógica do seu aplicativo sem se preocupar com a configuração de um servidor real. Essa abordagem não só acelera o desenvolvimento, mas também permite que você teste sua aplicação de forma eficiente.

Explore as funcionalidades do json-server e veja como ele pode simplificar seu fluxo de trabalho. Com essa ferramenta, você pode criar protótipos rapidamente e validar suas ideias antes de investir tempo em um backend mais complexo.

O uso de ferramentas como json-server tem se tornado cada vez mais comum entre desenvolvedores que trabalham com React. A possibilidade de simular um backend sem a complexidade de configurar um servidor real permite que os profissionais foquem no desenvolvimento da interface do usuário. Além disso, json-server é uma solução leve e rápida que pode ser facilmente integrada a qualquer projeto, tornando-o ideal tanto para protótipos quanto para aplicações em desenvolvimento. O entendimento sobre como utilizar essa ferramenta pode aumentar a eficiência no fluxo de trabalho e facilitar a colaboração entre equipes.

Algumas aplicações:

  • Protótipos rápidos de aplicações web.
  • Testes de integração sem um backend real.
  • Simulação de APIs para treinamento e aprendizado.

Dicas para quem está começando

  • Experimente criar diferentes rotas no json-server.
  • Utilize o comando json-server --port 4000 db.json para mudar a porta.
  • Aproveite a documentação do json-server para explorar todas as suas funcionalidades.

Contribuições de Gabriel Nogueira

Compartilhe este tutorial: Como utilizar json-server para simular um backend em desenvolvimento no React?

Compartilhe este tutorial

Continue aprendendo:

Como configurar testes de integração para chamadas de API no React?

Domine a configuração de testes de integração em React para garantir a funcionalidade das suas APIs.

Tutorial anterior

Como usar GraphQL Code Generator para facilitar integrações no React?

Entenda como o GraphQL Code Generator pode facilitar a integração de APIs em aplicações React.

Próximo tutorial