Hoe JSON-bestanden in Node.js lezen?

Hoe Json Bestanden In Node Js Lezen



JSON is een bestandsformaat dat wordt gebruikt bij het testen van de website of applicatie om ervoor te zorgen dat de gegevens perfect worden ontvangen en verzonden. Het JSON-formaat wordt uitsluitend gebruikt om gegevens via een netwerk van het ene deel naar het andere over te dragen. Het bevat gegevens in het sleutelwaardeformaat en voorkomt de kans dat de gegevens verloren gaan.

In deze blog worden de manieren uitgelegd om JSON-bestanden via Node.js te lezen.

Hoe JSON-bestanden in Node.js lezen?

Er zijn drie manieren waarop de geselecteerde JSON-bestandsgegevens kunnen worden gelezen in Node.js. De opgehaalde gegevens kunnen op de console of via de website op het specifieke poortnummer worden weergegeven. Deze sectie bevat alle mogelijke methoden om de JSON-bestanden te lezen.







Vereisten:

Voordat we verder gaan met de praktische implementatie, kijken we eerst naar het JSON-type bestand dat moet worden gelezen met Node.js. In ons geval is het “ jsonData ”-bestand met de volgende gegevens:



{

'naam' : 'Anderson' ,

'leeftijd' : 19 ,

'geslacht' : 'Mannelijk' ,

'afdeling' : 'Scheikunde' ,

'bloedgroep' : 'B+' ,

'gewicht' : '72' ,

'vaardigheden' : 'programmeren' ,

'Plaats' : 'Nieuw Boston'

}

Methode 1: Gebruik de methode 'require()' om het JSON-bestand in Node.js te lezen

Om de gegevens te lezen die zijn opgeslagen in een willekeurig JSON-type bestand, gebruikt u de “ vereisen() ”-methode die de functies of methoden ophaalt die zich in de externe modules bevinden. Het neemt de naam van de module tussen haakjes en retourneert een object dat de methode, eigenschappen of gebeurtenissen van die module bevat.



Op dezelfde manier retourneert het omzeilen van het pad van het JSON-bestand naar deze methode een object dat de volledige gegevens van het bestand bevat. Het is de eenvoudigste en gemakkelijkste manier om elk type bestand in Node.js te lezen.





Maak eerst een bestand met de naam “read.js” en voeg de onderstaande code toe aan het bestand voor een praktische demonstratie van deze methode:

laat jsonReadData = vereisen ( './jsonData.json' ) ;

troosten. loggen ( jsonReadData ) ;

In de bovenstaande code:



  • Het pad van het JSON-bestand staat in de “ vereisen() ”-methode als parameter om de gegevens op te halen en op te slaan in het object “jsonReadData”.
  • De ' console.log() ”-methode wordt gebruikt om de opgehaalde gegevens op de console weer te geven.

Voer het bestand “read.js” uit met behulp van de gegeven “ knooppunt ” commando:

knooppunt bestandsnaam

De onderstaande uitvoer laat zien dat de JSON-bestandsgegevens zijn opgehaald met behulp van de “ vereisen() methode:

Methode 2: Gebruik de functie “readFile()” om het JSON-bestand in Node.js te lezen

De ' leesBestand() ” is een andere functie die de bestandsgegevens leest uit het Bestandssysteem(fs) zonder het uitvoeringsproces te blokkeren vanwege het asynchrone karakter ervan. Het gebruikt ook de callback-functie om een ​​extra functie uit te voeren op de opgehaalde gegevens. Het wordt bijvoorbeeld gebruikt om de gegevens van een JSON-bestand op te halen.

Syntaxis

De syntaxis voor de “ leesBestand() ' functie van ' fs ”-module wordt vermeld als:

fsObj. leesBestand ( bestandsnaam, codeertype, customCallbackFunction )

In de bovenstaande syntaxis:

  • De ' fsObj ' is het object of de instantie die de module 'fs' aanroept voor het gebruik van de functie 'readFile()'.
  • De ' bestandsnaam ” is het specifieke bestand dat moet worden “gelezen”.
  • De ' codeType ” is een optionele parameter die het coderingstype specificeert, zoals utf8. Als dit niet wordt gedaan, keren de gegevens terug als een “buffer”.
  • De ' aangepaste terugbelfunctie ” is de functie die wordt uitgevoerd nadat het bestand met succes is gelezen.

Blader door het onderstaande codeblok waarin de inhoud van hetzelfde JSON-bestand “ jsonData ' wordt opgehaald en weergegeven via de console met behulp van de ' leesBestand() methode:

const fsObj = vereisen ( 'fs' ) ;

fsObj. leesBestand ( 'jsonData.json' , ( opgetredenErr, inhoud ) => {

als ( opgetredenErr ) gooien opgetredenErr ;

laat jsonData = JSON. ontleden ( inhoud ) ;

troosten. loggen ( jsonData ) ;

} ) ;

troosten. loggen ( 'Uitvoering is niet geblokkeerd voor komende processen' ) ;

De uitleg van de bovenstaande code staat hieronder:

  • Eerst de ' fs ”-module wordt geïmporteerd in de huidige “ lees.js ”-bestand en het object ervan worden opgeslagen in de variabele met de naam “ fsObj ”.
  • Roep vervolgens de “ leesBestand() ”-methode met behulp van de “ fsObj 'variabele die het JSON-bestand als eerste parameter doorgeeft, en de callback-functie als tweede parameter. Bovendien heeft de callback-functie twee parameters “ opgetredenErr ' En ' inhoud ”.
  • Gebruik binnen de terugbelfunctie de “ als ”-instructie om de foutafhandeling uit te voeren.
  • Geef daarna de “ inhoud ”-parameter in de “ JSON.parse() ”-methode om de gegevens naar JSON-formaat te converteren om de leesbaarheid te verbeteren.
  • Uiteindelijk, buiten de” leesBestand() De methode geeft willekeurige tekst weer op de console om te bevestigen dat deze het volgende proces pas blokkeert nadat het vorige proces is uitgevoerd.

Voer nu het bestand “read.js” uit met behulp van de onderstaande opdracht:

knooppunt gelezen

De uitvoer laat zien dat de JSON-gegevens met succes zijn opgehaald zonder de uitvoering van het komende proces te blokkeren:

Methode 3: Gebruik de functie 'readFileSync()' om het JSON-bestand in Node.js te lezen

De ' readFileSync() ”-functie wordt ook geleverd door de Bestandssysteem(fs) module die het bestand synchroon leest. Het stopt de uitvoering van het programma totdat de toegewezen taak niet is voltooid. Met andere woorden, het volgt de methodologie die het eerst komt, het eerst maalt. Het is totaal het tegenovergestelde van de besproken “ leesBestand() ” functie.

Syntaxis

De syntaxis van de “readFileSync()”-methode staat hieronder:

fsObj. leesFileSync ( bestandspad, codeertype )

In de bovenstaande syntaxis:

  • De ' bestandspad ”bevat het pad van het geselecteerde bestand.
  • De ' codeType ” specificeert het coderingstype volgens de vereisten.

De implementatie van de gedefinieerde methode wordt vermeld in onderstaande code:

const fsObj = vereisen ( 'fs' ) ;

inhoud laten = fsObj. leesFileSync ( 'jsonData.json' ) ;

laat jsonData = JSON. ontleden ( inhoud ) ;

troosten. loggen ( jsonData ) ;

troosten. loggen ( 'Uitvoering is nu geblokkeerd voor aankomende processen' ) ;

De beschrijving voor het bovenstaande codeblok is hier geschreven:

  • Importeer eerst de “ fs ” module en sla deze op als een object in de variabele “ fsObj ”.
  • Roep vervolgens de “ readFileSync() 'functie en geef de JSON-bestandsnaam door als parameter. Het retourneert de gegevens van het opgegeven bestand dat is opgeslagen in de variabele “ jsonData ”.
  • Om de gegevens in een leesbaar formaat weer te geven, past u de “ JSON.parse() ”-methode op de bestandsinhoud opgeslagen in de “ inhoud ”-variabele en geef deze vervolgens weer op de console.

Voer ten slotte het bestand uit om de uitvoer te zien:

knooppunt gelezen

Het is te zien dat de uitvoer de JSON-bestandsgegevens toont door alle aankomende processen te blokkeren:

In deze handleiding worden de benaderingen uitgelegd voor het lezen van de JSON-bestanden in Node.js.

Conclusie

Om de JSON-bestandsgegevens in Node.js te lezen, gebruikt u de “ vereisen ”-methode, omdat deze de gegevens van elk bestandstype of externe modules ophaalt. Bovendien is de “ leesBestand() ' En ' readFileSync() 'functies van de' fs ”-module kan ook worden gebruikt om deze taak uit te voeren. Zodra de bestandsgegevens met deze functies zijn opgehaald, past u de “ JSON.parse() methode om de inhoud leesbaar te maken. In deze handleiding worden de methoden en functies uitgelegd die helpen bij het lezen van de JSON-bestanden in Node.js.