Baixe o app para aproveitar ainda mais
Prévia do material em texto
Lendo arquivos com Node.JS De forma síncrona: Escrevendo arquivos De forma síncrona: Por padrão, a escrita de arquivos sobre-escreve o conteúdo do arquivo. Esse padrão pode ser modificado passando flags Uma opção é usar o appendFile, ele acrescenta ao final do arquivo o conteúdo passado Sobre Express Hello World criar pasta e entrar nela dar npm init -y npm i express --save (se for temporário, não usar o save) criar arquivo app.js (ou index.js ou qlqrNome.js) O aplicativo vai iniciar um servidor e escutar a porta 3000 Vai responder com o “Hello World” (por conta do res.send) Mas só responderá na rota ‘/’, por conta do app.get Para demais caminhos a resposta será um 404 not found Para executar o aplicativo node app.js e carregar o localhost no browser Sobre rotas Rotear diz como a aplicação responde à demanda do cliente em um endpoint especifico, no qual há um URL e um método especifico de HTTP Cada rota tem um ou mais funções que demonstram como serão executadas quando a rota combinar Em suma, a sintaxe é: app.METHOD(URL, função) Onde: app instância do express METHOD em minúsculo, método HTTP URL caminho do servidor função a função a ser executada quando a rota combinar Há um roteamento especial não-HTTP app.all() Serve para passar funções middleware em um caminho para todos os métodos de solicitação Manipulação de rota É possível criar funções de retorno de chamada que se comportam como middleware, inclusive podendo chamar next() É possível usar o next como pré-condição de rota Manipulação com uma única função de retorno Manipulação com uma função de retorno Manipulação com Array de funções Além de um res.send, pode haver outros métodos de resposta app.route() É possível encadear diversos métodos de rota express.Router Usar uma classe express.Router permite criar manipuladores de rota modulares e montáveis. A instância Router é uma espécie de Middleware e sistema de roteamento completo O exemplo cria um roteador como módulo, com uma função de middleware (função intermediária) nele, definindo algumas rotas e montando um módulo completo de router O arquivo acima é criado como arquivo à parte (ex.: birds.js) Para usar esse router no aplicativo, basta fazer Assim, habilita manipular solicitações às rotas /birds e /birds/about, bem como usar a função timeLog Sobre Middlewares São funções com acesso ao objeto de solicitação/demanda/req, ao objeto de resposta/response/res e ao próximo middleware ( next() ) Podem executar as seguintes tarefas: Executar qualquer código; Fazer mudanças nos objetos de solicitação e resposta Encerrar o ciclo solicitação-resposta Chamar o próximo middleware na pilha Chamar o próximo, apenas não for a última função do ciclo Para usar a função de middleware para as rotas abaixo da função, deve-se fazer um app.use(nomeFuncao) A ordem de carregamento/uso é importante Se o app.use fosse passado após o app.get nunca chegaria à função myLogger e, assim, nunca sairia no console o ‘LOGGED’, pois o res.send() é um “encerrador” de ciclos
Compartilhar