Dominando a Criação de uma API Fake com json-server no React

Crie APIs fake de forma simples e rápida utilizando json-server em projetos React.

Introdução ao json-server

Se você já se deparou com a necessidade de simular uma API durante o desenvolvimento de uma aplicação React, o json-server é uma ferramenta incrível que pode facilitar muito esse processo. Ele permite que você crie uma API RESTful fake a partir de um arquivo JSON, o que é excelente para testes e protótipos.

Instalação do json-server

Para começar, você precisa instalar o json-server em seu projeto. Isso pode ser feito facilmente através do npm. Execute o seguinte comando no terminal:

npm install -g json-server

Esse comando instala o json-server globalmente, permitindo que você o utilize em qualquer projeto. Se preferir, você pode instalá-lo como uma dependência do seu projeto:

npm install json-server --save-dev

Criando o arquivo JSON

O próximo passo é criar um arquivo JSON que servirá como base de dados da sua API fake. Crie um arquivo chamado db.json na raiz do seu projeto e adicione o seguinte conteúdo:

{
  "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, "body": "Comentário 1", "postId": 1 },
    { "id": 2, "body": "Comentário 2", "postId": 2 }
  ]
}

O exemplo acima cria duas entidades: posts e comments, cada uma com seus respectivos dados. Agora você pode usar esses dados como se fossem reais em sua aplicação.

Iniciando o json-server

Para iniciar o json-server e criar a API, execute o comando a seguir no terminal:

json-server --watch db.json

Esse comando inicia um servidor local que observa o arquivo db.json por alterações. Agora, sua API fake estará disponível em http://localhost:3000/posts e http://localhost:3000/comments.

Fazendo requisições com React

Com a API fake em funcionamento, você pode começar a fazer requisições HTTP no seu aplicativo React. Vamos criar um exemplo simples utilizando o fetch para obter os posts. No seu componente React, você pode fazer algo assim:

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>
      <h1>Posts</h1>
      <ul>
        {posts.map(post => (
          <li key={post.id}>{post.title}</li>
        ))}
      </ul>
    </div>
  );
};

export default Posts;

Neste exemplo, o componente Posts utiliza o useEffect para buscar os posts da API fake assim que o componente é montado. Os dados retornados são armazenados no estado posts e exibidos em uma lista.

Manipulando dados

Além de obter dados, você também pode enviar requisições POST, PUT e DELETE para manipular os dados na sua API fake. Por exemplo, para adicionar um novo post, você pode fazer o seguinte:

const addPost = async (newPost) => {
  await fetch('http://localhost:3000/posts', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
    },
    body: JSON.stringify(newPost),
  });
};

Esse trecho de código define uma função addPost que envia um novo post para a API. Você pode chamá-la ao submeter um formulário, por exemplo.

Conclusão

O json-server é uma ferramenta poderosa para desenvolvedores que desejam simular uma API durante o desenvolvimento. Com a capacidade de criar uma API RESTful fake de forma rápida e fácil, ele facilita o processo de teste e prototipagem. Agora que você já sabe como utilizá-lo, pode explorar suas funcionalidades e adaptá-lo às suas necessidades de desenvolvimento.

A criação de APIs é uma parte essencial do desenvolvimento moderno. Com o json-server, você pode gerar uma API fake rapidamente, o que é especialmente útil em fases iniciais de desenvolvimento. Ao simular uma API, você pode se concentrar na construção da interface do usuário sem depender de um servidor real. O json-server é uma ferramenta leve e fácil de usar, ideal para desenvolvedores que buscam eficiência e agilidade em seus projetos. Essa abordagem permite que você teste suas aplicações de forma intuitiva, criando um ambiente de desenvolvimento mais fluido e produtivo.

Algumas aplicações:

  • Prototipagem rápida de aplicações
  • Testes de front-end sem backend real
  • Simulação de respostas de APIs
  • Desenvolvimento de interfaces de usuário interativas

Dicas para quem está começando

  • Comece com um arquivo JSON simples para testar
  • Explore as opções de configuração do json-server
  • Use ferramentas como Postman para testar suas APIs
  • Documente sua API fake para fácil referência

Contribuições de Gabriel Nogueira

Compartilhe este tutorial: Como utilizar json-server para criar uma API fake no React?

Compartilhe este tutorial

Continue aprendendo:

Como lidar com polling no Apollo Client?

Aprenda a utilizar polling no Apollo Client para atualizações em tempo real de dados em suas aplicações React.

Tutorial anterior

Como integrar o Firestore em um projeto React?

Este tutorial aborda a integração do Firestore em projetos React, com exemplos práticos e dicas úteis.

Próximo tutorial