Armazenando dados com fluxos graváveis Node. js Este tutorial explica como armazenar dados com fluxos graváveis Node. js e como criar seu próprio fluxo gravável personalizado. Informações sobre a versão Autor: Jeff Barczewski Publicado em: 18 de agosto de 2013 Tags: nodejs, streams Nível: Intermediário Pré-requisitos: buffers, eventos, instalar npm modules Node. js v0.10 (último estável é v0.10.16 até à data desta redação) Geralmente têm sido uma parte do Node. js desde seus primeiros dias Streams2 Writable classe abstrata pode ser usado com versões mais antigas (antes de v0.10) de nó usando o módulo npm readable-stream (testado com v1.0.15) Armazenando dados com gravável Córregos Escrever arquivo de texto O exemplo mais simples é apenas por escrito utf8 texto, uma vez que a codificação padrão se você escrever seqüências de caracteres é utf8. Se você quiser escrever strings com uma codificação diferente, então você pode simplesmente alterar a linha createWriteStream ou adicionar codificação para cada gravação. Escrevendo arquivo binário Escrever um arquivo binário é apenas uma questão de usar Buffers em vez de seqüências de caracteres para a gravação. No exemplo acima, eu uso crypto. createRandomBytes () para criar um Buffer de dados, mas você pode usar dados binários que você cria ou lê de outra fonte tão facilmente. Saber quando arquivo foi escrito Entrada e saída são operações assíncronas em Node. js Então, o que se queremos saber quando um arquivo foi totalmente escrito A resposta é a configuração de ouvintes para eventos que o fluxo emite. O evento finish (adicionado em Node. js v0.10) indica que todos os dados foram liberados para o sistema subjacente. Em Node. js antes de v0.10, você poderia adicionar um cb para o. end () para obter uma indicação de quando que tinha sido liberado, no entanto terminar leva em conta quaisquer outras transformações a jusante e tal. Criando fluxos graváveis Node. js personalizados Quando você precisa criar seu próprio fluxo gravável personalizado para armazenar dados em um banco de dados ou em outras facilidades de armazenamento, é fácil se você usar a nova classe abstrata de Streams2 Writable disponível nativamente em Node. js 0.10 ou via Npm polyfill módulo readable-stream. Para criar um fluxo gravável que implementa todo o comportamento de fluxo Node. js normal, você só tem que subclassar Writeable e implementar write (chunk, encoding, cb). Criando fluxo de memória gravável Aqui está um exemplo que está escrevendo em um armazenamento de dados simples na memória. Estamos usando o nome dado na criação do fluxo como a chave, e acrescentamos dados ao valor até terminar. Os fluxos graváveis são elegantes e simples de usar. Escrever texto ou dados binários para fluxos Node. js é fácil, e até mesmo criar fluxos graváveis personalizados totalmente funcionais é uma caminhada no parque com a nova funcionalidade streams2 introduzida em Node. js v0.10 (ou Utilizando o módulo de leitura de fluxo polifilho). Para leitura adicional Siga-me Compartilhar esta página
No comments:
Post a Comment