Aula 04
API de Amostra com o json-server como Backend
Summary
Resumo da Configuração do API para o Projeto ReactNerve
Antes de começar a trabalhar no front-end do ReactNerve, é necessário configurar a API, que pode ser feita localmente ou em um servidor como o Heroku. Para isso, foi criado um repositório no GitHub chamado "Fake RESTful API".
Configuração do Ambiente
- Repositório GitHub: O projeto está disponível em GitHub - nbkhaope. É um serviço de API falsa similar ao JSON Placeholder.
- Uso do JSON Server: O projeto utiliza o JSON Server para criar um fake back-end localmente. Para instalar globalmente:
npm install -g json-server
Passos para Configurar a API
-
Clonagem do Repositório:
git clone https://github.com/nbkhaope/fake-RESTFLY.pi.git cd fake-RESTFLY.pi npm install
-
Arquitetura do Projeto:
- O
package.json
contém as dependências e os comandos necessários. - O arquivo
db.json
contém dados iniciais, com posts que incluem um ID, título e conteúdo.
- O
-
Executando o Servidor Localmente:
- Para iniciar o servidor, use:
npm start
- O servidor funcionará em
localhost:3000
por padrão. Você pode alterar a porta configurando a variável de ambientePORT
.
- Para iniciar o servidor, use:
-
Testes com a API:
- Use ferramentas como Postman para enviar requisições GET e POST para a API.
- Exemplo de um POST:
{ "title": "Olá Mundo", "body": "Conteúdo do post" }
- A resposta incluirá o novo post criado, confirmando que a API está funcionando.
Notas Finais
- Caso queira usar o JSON Server sem o repositório criado, você pode instalar o JSON Server localmente ou globalmente e usar o comando:
json-server --watch db.json
- Para rodar em uma porta diferente, configure a variável de ambiente
PORT
antes de iniciar o servidor.
Este resumo cobre os passos essenciais para configurar e usar a API fake para o projeto ReactNerve.
Video Transcript
Antes de a gente trabalhar no front-end do ReactNerve do nosso projeto, a gente tem que configurar
nosso API, seja localmente como um em outro servidor ou como o Rerocool, tá bom?
Então, pra fazer isso, eu preparei um pacote aqui, módulo que está no GitHub chamado
o RESTful API aqui, se você for na minha página, GitHub.com.nbk.h.p.
Pai num repositories, ou repositories, e dá uma busca fake RESTful API, tá bom?
Esse cara aqui, e eu criei esse repositório pra gente usar no nosso projeto e vai fazer
uma API falsa, igual como a gente fez no JSON Plays Holder, mas em vez de a gente usar
o serviço deles, a gente vai criar nosso próximo serviço, seja localmente como no Rerocool.
Voltando aqui pro meu repositório, tem umas instruções aqui, mas a gente vai passo a passo, não se preocupe.
Então, os arquivos aqui, a gente vai usar um módulo chamado JSON Server, muito útil,
esse módulo JSON Server, que é pra fazer uma fake back-end localmente, tá bom?
JSON Server, se você interessa aqui na página deles, e vai ser a mesma coisa que aparecer
no esse tipo de code que a gente fez.
Se você quiser instalar globalmente NPM install, para a dash de JSON Server, tá bom?
Mas, o que é que eu fiz?
Eu adicionei esse JSON Server de um jeito que fica muito fácil de mandar pro Rerocool, tá bom?
Pra você ter a sua própria API, se eu te mostrar aqui, eu fiz o meu projeto no Rerocool, e...
aqui, minha API chamada RESTful API Pulse no Rerocool, se eu dá um OK,
mostra essa página e tem o post aqui que a gente quer que eu criei.
Tem um outro pouquinho, tá aí, a gente foi no barra post, já aparece no post que eu criei,
inicialmente, você pode usar o postman pra dar uns pedidos, por exemplo, vou copiar,
vou lá pro postman, cadê o meu postman? Chrome, apps, postman, abrindo postman,
pra dash da API, vai aqui, ponho get, método, manda send, funcionou aqui, tá bom?
Também pode dar o post pra criar post, por exemplo, post, clica no post, vai aqui em cima no body,
em vez de ter esse JSON, título, lá no mundo, body, não sei o que, só pra ver se funciona, vou dar send,
note que é o post, pedido o método, HTTP, e aqui pra essa endpoint, barra, post,
não confunda esse post com esse post, tá bom? Vou mandar, a resposta tá aqui embaixo,
vou rolar pra baixo, código 201, criado, tá ok? Me deu o novo post com id 3, tá bom?
Então foi criado, pra confirmar, vou mudar o pedido pro get, e vou mudar o send, e ver a resposta,
tem um id 1, id 2, e o id 3, que é olá mundo, não sei o que, tá bom? Tá funcionando aqui,
então seu senote também, se voltar pro browser, pra ver, é a mesma coisa, né?
Tá fazendo o pedido do get, seu atualizado tá aqui, então é por isso que a gente vai fazer esse fake api,
tá bom? Então pra fazer isso, vai lá no meu repositório, vai no gethub.com, barra, nbkhaope,
barra fake, RESTFLY.pi, tem esses efeis aqui no meio, dá uma clonada no repositório, clon,
clonar, copia esse cara, tá bom? Vai pro seu terminal lá, vai pro local que você quer aqui,
deixe api, vou dar getclon e bandouinderes, vai dar uma clonada, vou dar um ls já tá aqui, vou entrar, tá bom?
Tô dentro, vou dar o quê? NPM install pra instalar as dependências, morar um pouquinho,
gente, tem o package.json, que tem as dependências e comandos, vou abrir meu atomo só pra você ver os
arquivos que estão dentro desse projeto, esse módulo, né? Está aqui o package.json, que eu tava falando,
vou abrir esse script pra começar o servidor api, note que é dependência no json server, como
eu te disse antes, então esse cara index tá aqui, eu escrevi isso aqui pra poder funcionar no
comando, eu tô só usando o json server com a porta que vai ser setada, variável de environment,
que vai ser do seu computador, do seu terminal, não precisa entender muito o que tá acontecendo
aqui, basta saber que só tá rodando comandos de server e o banco de dados falso é esse db.json e a
porta vai ser 3 mil se a variável de environment de ambiente não estiver setada, tá bom? Vou pro db.json,
esse aqui é os dados inicial, senão tem um post, né? e tem uma coletânea de vários posts, 2 posts,
id1 e id2, cada post tem a propriedade de título e do, ou o conteúdo do post, tá bom?
Então, vamos lá rodar isso, vou lá pro terminal, a gente pode rodar localmente,
simplesmente da npm start, o da npm start vai rodar o comando node index.js, tá bom? Agora
não tem nenhum output, mas tá funcionando, tá bom? Não tem nenhum, nada na tela, mas funciona
se você for pra o seu navegador, vai no localhost, port, se não tiver o whole port set, você
tem que dar 3 mil, tá dando, parabéns, tá rodando o servidor e tem o barra post aqui, que
vai dar aqueles coisas que tinham no db.json, tá bom? Noite seu copyar esse cara, tô no db.json, vou
copiar, adiciona a vírgula, copiar esse cara id3, salvar e ver o que acontece no navegador,
atualizar, senote foi adicionado, tá bom?
E é assim, como roda o servidor localmente, note que se eu dar um echo na variável port,
não tem nada, mas se eu der export, port, pra ser algo diferente, 3.090, dar um echo de novo, 3.090
a port, e se eu rodar o npm start de novo, vai rodar na port, 3.090, voltar o browser,
se eu rodar isso não vai funcionar, mas se eu botar para 3.090, funciona, tá bom? E por isso que
eu adicionei no index.js essa linha aqui, e esse aqui é mais pra rodar no heroco, que a gente vai ver no
próximo vídeo como fazer, pra dar um deploy, tá bom?
Partido agora só vou dar uma nota, se você já pode pular pro próximo vídeo, mas se você quer
aprender só como usar o json server localmente, sem usar meu módulo, fique aí, tá bom?
Então, se você não quiser mandar a pay pro heroco e quiser fazer tudo localmente sem usar
a minha meu módulo aqui, você pode só instalar o json server globalmente, ou no seu próprio
projeto, assim, com uma dependência, talvez dependência de development, dev dependency,
dash dash save dev, essas coisas. Então, tudo que você precisa fazer, só dar um json server
com modo, ifm ifwatch, e o nome do arquivo da database, do banco de dados falsos, no meu caso
db.json, que tá dentro do meu módulo aqui, dentro da minha parte, né, db.json, é só dar isso,
json server watchdb.json, ah, o que aconteceu? A gente tava lá porque deu problema, desculpa,
vou fazer, não sei o que, permissão, acho, é de ouro de permissão, deixa eu ver de novo,
db.json, ah, desculpa, não dá, porque eu não tenho permissão nessa conta, mas se você
der tudo certo, vai funcionar, deixa eu só, eu já tenho esse cara aqui, o json server no meu módulo,
tá aqui, então, vou ter que digitar isso tudo, watchdb.json, que funcionou, tá bom? É porque eu não tinha
instalado globalmente, mas eu tenho aqui dentro da pasta node modules, tá bom, json, não preciso,
só substituir isso aqui com json server, tá bom, então você dá um watch na banco de dados, vai aparecer
esse output, que não aparece, você usa o modo, mas aparece aqui, e tá dizendo os resources, essas coisas,
tá bom? Aí vai funcionar, porta 3000, e tá lá, tá funcionando ainda, tá bom? Tá bom? Esse aqui,
vou apertar c, control c para parar, até o próximo vídeo.
Nenhum comentário ainda (loading...)
Nenhum comentário ainda (loading...)
Gostou da aula? 😆👍
Apoie nosso trabalho com uma doação: