Prefácio
Após o artigo anterior "Uma breve discussão sobre os componentes do index.js, o arquivo principal do aplicativo NodeJS", finalmente conheci o rosto da garota do nó e, em seguida, parecia estar <( ̄ ̄)>. Yoxi ~ Desta vez, deixei Ben vagando pelo corpo dela, é bom pensar nisso. Bem, você termina aqui.
texto
Este artigo usa principalmente componentes para aprender sobre o arquivo principal index.js ... quão suave a pele é ( ̄ ̄) ~
Desde que eu mencionei os componentes do index.js antes, desta vez falarei sobre isso um por um. Isso mesmo! Como minhas mãos bonitas podem deixar de lado cada centímetro da sua pele?
1. Introduzir módulos de dependência
Bem ... é assim:
var express = requer ('expresso'); var path = requer ('caminho'); var favicon = requer ('serrest-favicon'); var logger = requer ('morgan'); var cookieparser = requer ('cookie-parser'); var corpoparser = requer ('body-sarser'); var bodyParser = reque ';';Na verdade, confiar em módulos é literal.
Nas palavras dos engenheiros de front-end, o código $ ("#id"). Att ("classe", "ativo") não pode ser girado sem jQuery.
Nas palavras dos animais, você não pode sobreviver sem comida.
Nas palavras deste artigo, você não pode sobreviver sem uma garota.
Bem ~ para resumir, a dependência é se preparar para o que você precisa fazer a seguir. Então o "Pinyin" acima desempenha esse papel ...
2. Configure configurações relacionadas
Entregue os códigos relevantes deste grupo:
// Exibir as configurações do mecanismo app.set ('Views', Path.Join (__ Dirname, 'Views'))); App.Set ('View Engine', 'Jade');Bem ... apenas duas linhas de código, meus seios são relativamente pequenos ( ̄ ̄), afinal, Loli, hahahaha.
As duas linhas de código acima são definir o diretório de tentativas e definir o jade como o mecanismo de tentativa. A quantidade de configurações depende de quais módulos você deseja usar. Alguns módulos também possuem configurações padrão, mas para a conveniência de escrever por si mesmo, eles definitivamente os definirão para a maneira como você gosta.
3. Middleware
// middleware app.use (favicon (path.join (__ dirname, 'public', 'favicon.ico')))); app.use (logger ('dev')); app.use (bodyparser.json ()); app.use (bodyparser.urloded ({extened: false. })); app.Use (cookieparser ()); app.use (express.static (path.join (__ dirname, 'público')));Middleware, estritamente falando, todas as linhas no index.js são middleware. Acho que muitos irmãos conhecem a palavra middleware, mas ainda não entendem o que isso significa. O que faz principalmente.
Então, eu pessoalmente comecei a desenhar a única imagem no universo:
Eu acredito que pessoas inteligentes podem entender isso de uma vez. Afinal, pode valer 50 centavos quando você o vende.
Sério falando: a grande flecha à esquerda refere -se à ordem de execução do código. Todo mundo sabe que o JS é executado de cima para baixo. Para explicar o middleware, a grande flecha é considerada um fluxo de água.
Enquanto a água fluía para baixo, algo semelhante ao filtro preso no meio. Ben de repente pensou se o hímen era o mesmo (ah, minha mente não estava certa de novo).
O filtro preto é o código acima. A função do middleware é a polícia, porteiro ou guia antes, durante e após o código principal ser executado. Por exemplo, por exemplo, usando o middleware do BodyParser, sua função é analisar a análise de dados do corpo das solicitações HTTP, o que é conveniente para uso no roteamento. O mesmo vale para o cookie-parser.
Na parte do meio dos dois filtros da figura, geralmente é uma rota e é responsável por retornar a página que o cliente deseja.
Nesse momento, ele perguntou com um olho afiado, por que o middleware está abaixo do vermelho? E por que eu o coloco para trás da rota para executar?
Boa pergunta! Estou prestes a dizer isso. Amigos familiarizados com o desenvolvimento de nós sabem que a maioria dos middleware é geralmente escrita antes do roteamento, mas às vezes alguns erros incertos não podem ser evitados, como o que devo fazer se a página que o usuário visita não existir? O que devo fazer se a versão de desenvolvimento estiver errada ou a versão oficial estiver errada? Neste momento, é o middleware "vermelho" que aparece. Sim, é principalmente responsável pelas consequências e geralmente é usado para lidar com possíveis erros.
4. Roteamento
// route app.use ('/', rotas); app.use ('/usuários', usuários);O roteador é uma boa pessoa. O cliente só precisa enviar uma solicitação e o roteador tentará o possível para ajudá -lo a resolver a solicitação com base no URL da solicitação. Ele pode processar dados de maneiras diferentes (obtenha, postar, colocar, del ...) ou retornar à página desejada. De qualquer forma, é uma boa prata que pode ser tentada voltar ao melhor de suas perguntas ~ De fato, o roteamento também é um middleware, mas deve ser melhor como um componente independente.
5. Ligue o serviço
// Inicie o serviço http.createServer (app) .Listen (app.get ('porta'), function () {console.log ('O serviço iniciado com sucesso, a porta é:'+app.get ('porta');});Ah hahahaha, finalmente cheguei ao orgasmo, a Node Girl está quase fora de alcance <( ̄ ̄)>
Testa. . . Parece não haver nada a dizer, apenas para ativar o serviço. . . . . . Bem, antes de iniciar o serviço, você precisa criar um serviço através do http.createServer () e, em seguida, ligue para o método Listen () para ativá -lo. Dessa forma, todo o aplicativo será aberto ~~~ A grande flecha nessa imagem mágica também pode ser penetrada sem problemas. . Entre. Ir. . Agora.