Informações do Curso
  • Conteúdo dos Capítulos
Introdução ao Node.JS
  • O que é o Node.JS
  • Instalação do Node.JS no Windows
  • Instalação do Node.JS no Linux/Mac OS
  • Modo REPL - Repeat, Evaluate, Print Loop
  • Primeiro Script
  • Os Objetos Global e Process
  • Usando Módulos Built-In
  • Usando Módulos Personalizados
  • NPM: Node Package Manager
  • Convertendo os Exemplos para Typescript
  • Depuração em uma Aplicação Node.JS
Começando com a API REST - Node & Restify
  • Primeira API: Instalando as Dependências
  • Primeiro Exemplo com Restify
  • Os Objetos Request, Response e Next
  • O Protocolo HTTP
  • O que é REST
  • Criando a classe do Servidor
  • Primeiro Recurso REST - (GET)
  • Obtendo um Único Recurso - (GET)
Introdução ao MongoDB
  • Instalação do MongoDB (e iniciando o serviço)
  • Criando e Consultando Documentos no MongoShell
  • ObjectID e Consultas com Filtros
  • Alterando Documentos no Mongo Shell
  • Manipulando Documentos com o Robo 3T
Continuando a API - Restify & Mongoose
  • Conectando a API ao MongoDB
  • Mapeando o Schema de um Documento com Mongoose
  • Criando um Documento via POST
  • Substituindo um Documento via PUT
  • Alterando um Documento via PATCH
  • Excluindo um Documento via DELETE
  • Aumentando o Reuso no Router
Validação, Eventos e Tratamento de Erros - Restify & Mongoose
  • Tratamento de Erros com Restify
  • Validadores Padrões - Mongoose
  • Validação Personalizada com Mongoose
  • Modificações com Middleware (Pre)
  • Validações e Middleware em Update (Mongoose)
Extendendo a API para Outros Recursos
  • Extendendo o Router Para Outros Recursos
  • Recurso de Restaurantes - Schema e Subdocumento (Mongoose)
  • Router de Restaurantes - Restify
  • Recurso de Reviews - Schema e Referência de Documentos
  • Router de Reviews - Restify
Versionamento e Hypermedia
  • Controlando Diferentes Versões na API - Restify
  • Métodos Personalizados no Model - Mongoose
  • Hypermedia em REST
  • Adicionando Links na API
  • Paginação - Skip e Limit
Testando a API com Jest e Supertest
  • Instalando as Dependências
  • Testes com POST e GET
  • Outros métodos e Casos de Exceção
  • Inicialização Global para todas as Suites
  • Refactoring Após Testes
Segurança
  • Autenticação (Parte 1)
  • Autenticação - Tokens JWT (Parte 2)
  • Autorização (Parte 1)
  • Autorização (Parte 2)
  • Habilitando HTTPS
  • Adaptando os Testes para as Mudanças de Segurança
Cluster e Gerenciamento de Processos com PM2
  • Instalando e Conhecendo o PM2
  • Node Event Loop e Processos em Cluster
  • Arquivo de Configuração do PM2
  • Logging com Restify e PM2
Ambiente de Produção na Nuvem (Digital Ocean)
  • Registrando o Nome do Domínio (GoDaddy)
  • Criando o Servidor na Digital Ocean
  • Configurando o Servidor (SSH e Firewall) - Windows
  • Configurando o Servidor (SSH e Firewall) - Linux & Mac
  • Instalação do NGINX como Proxy Reverso
  • Configuração de Certificado HTTPs com LetsEncrypt
  • Instalação do MongoDB
  • Instalação do Node.JS, PM2, Typescript e Outras Ferramentas
  • Criação do Repositório no Gitlab.com
  • Baixando a Aplicação no Servidor
  • Finalizando Configurações de Deploy
Integração e Entrega Contínua com Gitlab
  • Configurando os Testes Automatizados
  • Automatização do Deploy
CORS
  • CORS - Cross Origin Resource Sharing
  • Habilitando CORS na API
  • Evitando CORS no Ambiente de Produção