Esta API permite o registro, login e acesso ao perfil de usuários. Todas as funcionalidades estão protegidas por autenticação JWT e seguras com o bcrypt.
- Node.js
- MySQL
- Express
- TypeORM
- JWT para autenticação
-
Clone este repositório:
git clone <URL_DO_REPOSITÓRIO>
-
Instale as dependências:
yarn add
-
Configure o banco de dados MySQL e atualize o arquivo
.env
com suas credenciais de banco de dados e chave JWT. -
Rode as migrações do banco de dados:
yarn typeorm migration:run
-
Inicie o servidor:
yarn dev
- Rota:
/user/register
- Método:
POST
- Descrição: Registra um novo usuário no sistema.
POST /user/register
Content-Type: application/json
{
"name": "John Doe",
"email": "[email protected]",
"password": "123456"
}
{
"message": "Usuário registrado com sucesso",
"user": {
"id": 1,
"name": "John Doe",
"email": "[email protected]"
}
}
- Rota:
/user/login
- Método:
POST
- Descrição: Faz login do usuário e retorna um token JWT.
POST /user/login
Content-Type: application/json
{
"email": "[email protected]",
"password": "123456"
}
{
"token": "jwt_token_aqui"
}
- Rota:
/user/profile
- Método:
GET
- Descrição: Retorna os dados do perfil do usuário autenticado.
Authorization: jwt_token_aqui
{
"id": 1,
"name": "John Doe",
"email": "[email protected]"
}
- authMiddleware: Middleware usado para proteger rotas que necessitam de autenticação. Verifica se o token JWT está presente e válido.