As mudanças ambientais causaram um grande salto tecnológico, com oportunidades e desafios chegando ao mesmo tempo. Como eu não aprendi JS, tive que dirigir o pato para colocá -lo nas prateleiras e aprender juntos. (><)
1. Leia o livro primeiro
Eu li "Node.js detalhado e fácil de entender" no início, e percebi que este livro exige uma certa base depois de lê-lo. Eu pesquisei on-line a "Introdução ao Nó" de 41 páginas e aprendi a criar um aplicativo da Web sozinho. E depois de refrescar a sensação de realização, li "The Great Node.js". Agora vou ler o livro novamente depois de ler "Node.js, profundo e fácil de entender o Node.js".
2. Construa um ambiente para executar rotinas no Git (3 erros relatados)
Depois de baixar o MSI no site oficial, vá em seguida. Ao inserir a instalação do comando npm, um erro "npm err! Não encontrado: git" é relatado. O motivo é que o novo computador não segue o git.
Ao instalar o pacote de dependência externa, foi relatado um erro "GYP ERR! Configurar erro" e o motivo foi que o ambiente Python não. Além disso, esse pacote de dependência só pode ser instalado na versão inferior. O último erro foi "msbuild: erro msb3428: componente visual c ++" vcbuild.exe "falhou ao carregar. O erro ainda foi relatado após a instalação do .NET Framework 2.0 SDK e MVS2005. Desista decisivamente.
3. O primeiro aplicativo da web
Depois de executar o "Hello World", comece a escrever um aplicativo da Web que seja completamente baseado no nó. Primeiro, você precisa iniciar o módulo do servidor. O objeto retornado pela função CreateServer no módulo HTTP possui uma porta de escuta do método escutada ([port]). Os parâmetros desta função são estranhos e são uma definição de função. No JavaScript, uma função pode receber um parâmetro como outra função, e a função de parâmetro é chamada de função anônima. O motivo do uso desse método é que o Node usa retornos de chamada orientados a eventos. Quando o servidor recebe uma solicitação em um único processo, ele chamará essa função para processar a solicitação. Quando ocorre um evento correspondente, a função CreateServer chama essa função para frente e para trás.
Depois de receber a solicitação HTTP, precisamos processar a solicitação. Primeiro, propomos abstrivelmente URLs diferentes e obtemos e posta parâmetros à solicitação. Aqui, usamos dois URLs do módulo interno (análise de URLs) e String de consulta (Processando Strings de consulta). E adicione o módulo do roteador por meio da injeção de dependência. Em seguida, o módulo que lida com a solicitação precisa ser concluído antes que o roteamento seja aprimorado. Todas as solicitações são passadas entre os módulos através de uma alça, e o manipulador pode responder. De um modo geral, deixe o manipulador de solicitação retornar diretamente (retornar ()) as informações que desejam exibir ao usuário através da função OnRequest. No entanto, pode ser muito demorado ao executar operações de bloqueio, por isso precisamos usar operações não bloqueadoras. Use retornos de chamada passando a função como um argumento para outras funções que levam tempo para processar. Comparado à passagem do conteúdo para o servidor, usamos o método de "passar" o servidor para o conteúdo desta vez. É para passar o objeto de resposta (obtenha da função de retorno de chamada do servidor onRequest ()) como um parâmetro de função para o manipulador por meio do roteamento. Dessa forma, o manipulador pode chamar as funções no objeto.
Em seguida, realizaremos a etapa de processamento, enviando fotos através do formulário e aqui usamos o pacote de dependência externo formidável para receber fotos. Este módulo é usado para processar formulários e fazer upload de arquivos. Use primeiro var form = new formatable.incomingForm (); Para obter um objeto de formulário. O método parse desse objeto pode analisar e processar dados de formulários. Simplesmente salvamos o arquivo. O módulo FS é usado para salvar o arquivo. Ao renomear o método, especificando o local salvo, usando o método sincronizado renamesync (), o comportamento de salvar o arquivo pode ser precedido exibindo o comportamento da imagem.
É muito simples exibir imagens. Você pode ler o arquivo através do método ReadFile do FS. Você pode usar o Response.Write (arquivo, "binário") em sua função de retorno de chamada para exibir imagens no navegador.
Para resumir: Através dessa rotina, aprendemos sobre os recursos do Node.js, como fibra única, assíncrona, orientada por eventos, etc. Alguns desses conceitos abstratos também são exibidos através de rotinas, mas eles ainda precisam ser entendidos em profundidade. Aprender através de rotinas significa que você precisa verificar as informações quando não as entender. Esse método de aprendizado também é um bom método do tipo de entrada de entrada de entrada.