Hvordan læser man JSON-filer i Node.js?

Hvordan Laeser Man Json Filer I Node Js



JSON er et filformat, der bruges på tidspunktet for test af webstedet eller applikationen for at sikre, at dataene modtages og sendes perfekt. JSON-formatet bruges udelukkende til at overføre data fra en del til en anden over et netværk. Den indeholder data i nøgleværdi-formatet og forhindrer chancerne for at miste dataene.

Denne blog forklarer fremgangsmåderne til at læse JSON-filer via Node.js.

Hvordan læser man JSON-filer i Node.js?

Der er tre tilgange, hvormed de valgte JSON-fildata kan læses i Node.js. De hentede data kan vises på konsollen eller over hjemmesiden på det specifikke portnummer. Dette afsnit omfatter alle mulige metoder til at læse JSON-filerne.







Forudsætninger:

Inden du går videre til den praktiske implementering, skal du først se på filen af ​​typen JSON, der skal læses ved hjælp af Node.js. I vores tilfælde er det ' jsonData ' fil med følgende data:



{

'navn' : 'Anderson' ,

'alder' : 19 ,

'køn' : 'Han' ,

'afdeling' : 'Kemi' ,

'blodgruppe' : 'B+' ,

'vægt' : '72' ,

'færdigheder' : 'programmering' ,

'Beliggenhed' : 'New Boston'

}

Metode 1: Brug metoden 'require()' til at læse JSON-filen i Node.js

For at læse de data, der er gemt i en tilfældig JSON-type fil, skal du bruge ' kræve() ” metode, der henter de funktioner eller metoder, der ligger i de eksterne moduler. Det tager modulets navn inde i parentesen og returnerer et objekt, der indeholder metoden, egenskaberne eller begivenhederne for det pågældende modul.



På samme måde returnerer man ved at omgå JSON-filens sti til denne metode et objekt, der indeholder hele filens data. Det er den enkleste og nemmeste måde at læse enhver filtype i Node.js.





Først skal du oprette en fil med navnet 'read.js' og tilføje nedenstående kode til filen for en praktisk demonstration af denne metode:

lad jsonReadData = kræve ( './jsonData.json' ) ;

konsol. log ( jsonReadData ) ;

I ovenstående kode:



  • Stien til JSON-filen er angivet i ' kræve() ”-metoden som dens parameter til at hente dens data og gemme dem i “jsonReadData”-objektet.
  • Det ' console.log() ” metode bruges til at vise de hentede data på konsollen.

Udfør filen 'read.js' ved at bruge den givne ' node kommando:

node filnavn

Nedenstående output viser, at JSON-fildata er blevet hentet ved hjælp af ' kræve() ” metode:

Metode 2: Brug 'readFile()'-funktionen til at læse JSON-filen i Node.js

Det ' readFile() ” er en anden funktion, der læser fildataene fra Filsystem(fs) uden at blokere udførelsesprocessen på grund af dens asynkrone karakter. Den bruger også tilbagekaldsfunktionen til at udføre nogle ekstra funktioner på de hentede data. For eksempel bruges det til at hente data fra en JSON-fil.

Syntaks

Syntaksen for ' readFile() ' funktion af ' fs ” modul er angivet som:

fsObj. læs fil ( fileName, encodeType, customCallbackFunction )

I ovenstående syntaks:

  • Det ' fsObj ” er objektet eller instansen til at kalde “fs”-modulet til brug af “readFile()”-funktionen.
  • Det ' filnavn ' er den specifikke fil, der skal 'læses'.
  • Det ' encodeType ” er en valgfri parameter, der specificerer kodningstypen som utf8. Hvis det ikke er angivet, vil dataene vende tilbage som en 'buffer'.
  • Det ' customCallbackFunction ” er den funktion, der udføres, efter at filen er blevet læst.

Gå gennem nedenstående kodeblok, hvor indholdet af den samme JSON-fil ' jsonData ' hentes og vises over konsollen ved hjælp af ' readFile() ” metode:

konst fsObj = kræve ( 'fs' ) ;

fsObj. læs fil ( 'jsonData.json' , ( opstodFejl, indhold ) => {

hvis ( opstodFejl ) kaste opstodFejl ;

lad jsonData = JSON. parse ( indhold ) ;

konsol. log ( jsonData ) ;

} ) ;

konsol. log ( 'Eksekvering er ikke blokeret for kommende processer' ) ;

Forklaringen af ​​ovenstående kode er angivet nedenfor:

  • For det første ' fs ' modul importeres til den aktuelle ' read.js '-fil og dens objekt er gemt i variablen med navnet ' fsObj ”.
  • Næste, påberåb ' readFile() ' metode ved hjælp af ' fsObj variabel, der sender JSON-filen som dens første parameter, og tilbagekaldsfunktionen som dens anden parameter. Desuden har tilbagekaldsfunktionen to parametre ' opstodFejl ' og ' indhold ”.
  • Inde i tilbagekaldsfunktionen skal du bruge ' hvis ”-sætning for at udføre fejlhåndteringen.
  • Derefter skal du videregive ' indhold ' parameter i ' JSON.parse() ”-metode til at konvertere dataene til JSON-format for at forbedre læsbarheden.
  • I sidste ende uden for” readFile() ”-metoden viser tilfældig tekst på konsollen for at bekræfte, at den ikke blokerer for den næste proces, før den forrige proces er udført.

Udfør nu filen 'read.js' ved hjælp af nedenstående kommando:

node læst

Outputtet viser, at JSON-dataene er blevet hentet uden at blokere udførelsen for den kommende proces:

Metode 3: Brug 'readFileSync()'-funktionen til at læse JSON-filen i Node.js

Det ' readFileSync() ”-funktionen leveres også af Filsystem(fs) modul, der læser filen på en synkron måde. Det stopper programmets udførelse, indtil den tildelte opgave ikke er fuldført. Med andre ord følger den først til mølle-metoden. Det er totalt modsat det diskuterede ' readFile() ' funktion.

Syntaks

Syntaksen for 'readFileSync()'-metoden er skrevet nedenfor:

fsObj. readFileSync ( filePath, encodeType )

I ovenstående syntaks:

  • Det ' filsti ” indeholder stien til den valgte fil.
  • Det ' encodeType ” specificerer kodningstypen i henhold til kravene.

Implementeringen af ​​den definerede metode er angivet i nedenstående kode:

konst fsObj = kræve ( 'fs' ) ;

lade indhold = fsObj. readFileSync ( 'jsonData.json' ) ;

lad jsonData = JSON. parse ( indhold ) ;

konsol. log ( jsonData ) ;

konsol. log ( 'Eksekvering er nu blokeret for kommende processer' ) ;

Beskrivelsen for ovenstående kodeblok er skrevet her:

  • Først skal du importere ' fs ' modul og gem det som et objekt i variablen ' fsObj ”.
  • Næste, påberåb ' readFileSync() ”-funktionen og videregive JSON-filnavnet som dets parameter. Det vil returnere dataene for den angivne fil, der er gemt i variablen ' jsonData ”.
  • For at vise dataene i et læsbart format skal du anvende ' JSON.parse() '-metoden på filindholdet, der er gemt i ' indhold ” variabel og derefter vise den på konsollen.

Til sidst skal du udføre filen for at se outputtet:

node læst

Det kan ses, at outputtet viser JSON-fildataene ved at blokere alle de kommende processer:

Denne vejledning har forklaret fremgangsmåderne til at læse JSON-filerne i Node.js.

Konklusion

For at læse JSON-fildataene i Node.js skal du bruge ' kræve ”-metoden, da den henter data fra enhver filtype eller eksterne moduler. Desuden ' readFile() ' og ' readFileSync() ' funktioner af ' fs ”-modulet kan også bruges til at udføre denne opgave. Når fildataene er hentet ved hjælp af disse funktioner, skal du anvende ' JSON.parse() ” metode til at gøre indholdet læsbart. Denne vejledning har forklaret de metoder og funktioner, der hjælper med at læse JSON-filerne i Node.js.