LE07 - Login e Recuperação de Tzeets
Prazo: 11/12/2022 Para cada dia em atraso será descontado 0.5 pontos da nota da atividade.
Envio:
Enviar, através do formulário, o link para o repositório no github com a implementação da atividade descrita a seguir.
Descrição:
Nessa atividade nós finalmente vamos começar a interagir com o backend. O backend que iremos utilizar foi criado usando a ferramenta Strapi. Você não precisará alterar o código do backend, mas precisará executá-lo na sua máquina local. Para isso clone o repositório do backend encontrado no GitHub.
O backend já possui um usuário com tzeets no banco de dados. Para logar usando esse usuário use as seguintes informações:
| Login | Senha | Tipo de usuário |
|---|---|---|
| admin@mail.com | Admin123456 | Admin do Strapi |
| fulano@mail.com | 123456 | Usuário do Tzeeter |
Primeiramente a sua missão é implementar o login e proteger as URL que só podem ser acessadas por usuários logados.
Um usuário não logado, não pode ser acessar a página Home ou a página de Profile. No entanto, ele poderia acessar a página de login e de signup.
Quando um usuário conseguir logar, ele deve ser direcionado ao Home e nesse caso ele deve ser capaz de ver os seus Tzeets que estarão armazenados no banco de dados.
A seguir temos a lista de endpoints que serão necessários nessa atividade e a modelagem do banco de dados do Tzeeter.
| HTTP Method | URL | Descrição |
|---|---|---|
| POST | /auth/local/ | Autenticação |
| GET | /users/me | Recuperação do avatar |
| GET | /tzeets | Buscar tzeets de um usuário específico |

DICAS:
- Para realizar o login é necessário enviar uma requisição POST para o endpoint
/auth/local/. Em caso de sucesso, um JSON que com as informações do usuário autenticado será enviado de volta. Atenção, este JSON não contém informaçõe de relacionamentos. Logo, ao logar, precisaremos de uma segunda requisção para recuperar: a lista de seguidores, a lista de quem estamos seguindo e a foto do usuário. - Para recuperar todas as informações de um usuário, incluido a relações, uma requisção do tipo GET de deve ser enviada para o endpoint
/users/me. Aqui você precisá informar o campos que deseja popular. Para mais detalhes, consulte a documentação do strapi
⚠️ Executando o backend
Depois de clonar o repositório do, precisamos adicionar algums chaves criptografadas (APP_KEYS) no arquivo de configuração .env
Siga os seguintes passos:
- Copie o arquivo chamado
.env.examplee salve-o como.env - Gere as chaves através do comando
openssl rand -base64 16, cada execução gera uma chave. Gere quatro chaves pelo menos. - Copie essa chaves e atribua a variável
APP_KEYSseparando as chaves com vírgula -
Depois desses passos você poderá finalmente executar o Strapi. Para isso instale as dependências:
npm install # or yarn install -
Execute o backend:
npm run develop # or yarn develop