Paano Magbasa ng Mga File ng JSON sa Node.js?

Paano Magbasa Ng Mga File Ng Json Sa Node Js



Ang JSON ay isang format ng file na ginagamit sa panahon ng pagsubok sa website o application upang matiyak na ang data ay natatanggap at naipadala nang perpekto. Ang format ng JSON ay ginagamit lamang upang maglipat ng data mula sa isang bahagi patungo sa isa pa sa isang network. Naglalaman ito ng data sa format na key-value at pinipigilan ang mga pagkakataong mawala ang data.

Ipinapaliwanag ng blog na ito ang mga diskarte sa pagbabasa ng mga JSON file sa pamamagitan ng Node.js.

Paano Magbasa ng JSON Files sa Node.js?

May tatlong diskarte kung saan mababasa ang napiling data ng file ng JSON sa Node.js. Maaaring ipakita ang nakuhang data sa console o sa ibabaw ng website sa partikular na numero ng port. Binubuo ng seksyong ito ang lahat ng posibleng paraan para basahin ang mga JSON file.







Mga kinakailangan:

Bago lumipat sa praktikal na pagpapatupad, tingnan muna ang JSON-type na file na kailangang basahin gamit ang Node.js. Sa aming kaso, ito ay ' jsonData ” file na mayroong sumusunod na data:



{

'pangalan' : 'Anderson' ,

'edad' : 19 ,

'kasarian' : 'lalaki' ,

'kagawaran' : 'Chemistry' ,

'grupo ng dugo' : 'B+' ,

'timbang' : '72' ,

'kasanayan' : 'programming' ,

'Lokasyon' : 'Bagong Boston'

}

Paraan 1: Gumamit ng “require()” Method para Basahin ang JSON File sa Node.js

Upang basahin ang data na nakaimbak sa isang random na JSON-type na file, gamitin ang ' nangangailangan() ” paraan na kinukuha ang mga function o pamamaraang naninirahan sa mga panlabas na module. Kinukuha nito ang pangalan ng module sa loob ng parenthesis at nagbabalik ng isang bagay na naglalaman ng pamamaraan, mga katangian, o mga kaganapan ng module na iyon.



Sa parehong paraan, ang pag-bypass sa path ng JSON file sa paraang ito ay nagbabalik ng object na naglalaman ng buong data ng file. Ito ang pinakasimple at pinakamadaling paraan upang basahin ang anumang uri ng file sa Node.js.





Una, lumikha ng isang file na pinangalanang 'read.js' at idagdag ang code sa ibaba sa file para sa isang praktikal na pagpapakita ng pamamaraang ito:

hayaan ang jsonReadData = nangangailangan ( './jsonData.json' ) ;

console. log ( jsonReadData ) ;

Sa code sa itaas:



  • Ang path ng JSON file ay ibinigay sa loob ng ' nangangailangan() ” bilang parameter nito upang makuha ang data nito at maiimbak ito sa object na “jsonReadData”.
  • Ang ' console.log() ” paraan ay ginagamit upang ipakita ang nakuhang data sa console.

Isagawa ang 'read.js' na file gamit ang ibinigay na ' node ” utos:

node fileName

Ang output sa ibaba ay nagpapakita na ang JSON file data ay nakuha gamit ang ' nangangailangan() 'paraan:

Paraan 2: Gamitin ang “readFile()” na Function para Basahin ang JSON File sa Node.js

Ang ' readFile() ” ay isa pang function na nagbabasa ng data ng file mula sa File System(fs) nang hindi hinaharangan ang proseso ng pagpapatupad dahil sa asynchronous na katangian nito. Ginagamit din nito ang callback function upang magsagawa ng ilang karagdagang function sa nakuhang data. Halimbawa, ginagamit ito upang kunin ang data ng isang JSON file.

Syntax

Ang syntax para sa ' readFile() ' ang gamit ng ' fs ” ang module ay nakasaad bilang:

fsObj. readFile ( fileName, encodeType, customCallbackFunction )

Sa itaas na syntax:

  • Ang ' fsObj Ang ” ay ang object o instance para i-invoke ang “fs” module para sa paggamit ng “readFile()” function.
  • Ang ' fileName ” ay ang partikular na file na kailangang “basahin”.
  • Ang ' encodeType Ang ” ay isang opsyonal na parameter na tumutukoy sa uri ng pag-encode tulad ng utf8. Kung hindi ito ibinigay, babalik ang data bilang isang 'buffer'.
  • Ang ' customCallbackFunction ” ay ang function na ipapatupad pagkatapos na matagumpay na mabasa ang file.

Tumawid sa ibaba ng block ng code kung saan ang nilalaman ng parehong JSON file ay ' jsonData ' ay kinukuha at ipinapakita sa ibabaw ng console gamit ang ' readFile() 'paraan:

const fsObj = nangangailangan ( 'fs' ) ;

fsObj. readFile ( 'jsonData.json' , ( nangyariErr, nilalaman ) => {

kung ( nangyariErr ) itapon nangyariErr ;

hayaan ang jsonData = JSON. pag-parse ( nilalaman ) ;

console. log ( jsonData ) ;

} ) ;

console. log ( 'Hindi naka-block ang pagpapatupad para sa Mga Paparating na Proseso' ) ;

Ang paliwanag ng code sa itaas ay nakasaad sa ibaba:

  • Una, ang ' fs 'Ang module ay na-import sa kasalukuyang ' basahin.js ” file at ang bagay nito ay nakaimbak sa variable na pinangalanang “ fsObj ”.
  • Susunod, tawagan ang ' readFile() 'paraan gamit ang ' fsObj ” variable na nagpapasa sa JSON file bilang unang parameter nito, at ang callback function bilang pangalawang parameter nito. Higit pa rito, ang callback function ay may dalawang parameter ' nangyariErr 'at' nilalaman ”.
  • Sa loob ng function ng callback, gamitin ang ' kung ” pahayag upang maisagawa ang paghawak ng error.
  • Pagkatapos nito, ipasa ang ' nilalaman 'parameter sa ' JSON.parse() ” paraan para i-convert ang data sa JSON na format para mapahusay ang pagiging madaling mabasa.
  • Sa huli, sa labas ng” readFile() ” paraan ay nagpapakita ng random na teksto sa console upang kumpirmahin na hindi nito hinaharangan ang susunod na proseso hanggang sa pagpapatupad ng nakaraang proseso.

Ngayon, isagawa ang 'read.js' na file gamit ang nakasaad sa ibaba na command:

nabasa ang node

Ipinapakita ng output na ang data ng JSON ay matagumpay na nakuha nang hindi hinaharangan ang pagpapatupad para sa paparating na proseso:

Paraan 3: Gamitin ang “readFileSync()” na Function para Basahin ang JSON File sa Node.js

Ang ' readFileSync() ” function ay ibinibigay din ng File System(fs) module na nagbabasa ng file sa isang magkasabay na paraan. Ihihinto nito ang pagpapatupad ng programa hanggang sa hindi makumpleto ang nakatalagang gawain nito. Sa madaling salita, ito ay sumusunod sa first come first serve methodology. Ito ay ganap na kabaligtaran sa tinalakay na ' readFile() ” function.

Syntax

Ang syntax ng 'readFileSync()' na paraan ay nakasulat sa ibaba:

fsObj. readFileSync ( filePath, encodeType )

Sa itaas na syntax:

  • Ang ' filePath ” ay naglalaman ng landas ng napiling file.
  • Ang ' encodeType ” ay tumutukoy sa uri ng pag-encode ayon sa mga kinakailangan.

Ang pagpapatupad ng tinukoy na pamamaraan ay nakasaad sa ibaba ng code:

const fsObj = nangangailangan ( 'fs' ) ;

hayaan ang nilalaman = fsObj. readFileSync ( 'jsonData.json' ) ;

hayaan ang jsonData = JSON. pag-parse ( nilalaman ) ;

console. log ( jsonData ) ;

console. log ( 'Naka-block na ngayon ang pagpapatupad para sa Mga Paparating na Proseso' ) ;

Ang paglalarawan para sa bloke ng code sa itaas ay nakasulat dito:

  • Una, i-import ang ' fs ” module at iimbak ito bilang isang bagay sa variable “ fsObj ”.
  • Susunod, tawagan ang ' readFileSync() ” function at ipasa ang JSON file name bilang parameter nito. Ibabalik nito ang data ng tinukoy na file na nakaimbak sa variable na ' jsonData ”.
  • Upang ipakita ang data sa isang nababasang format, ilapat ang ' JSON.parse() 'paraan sa nilalaman ng file na nakaimbak sa ' nilalaman ” variable at pagkatapos ay ipakita ito sa console.

Panghuli, isagawa ang file upang makita ang output:

nabasa ang node

Makikita na ang output ay nagpapakita ng JSON file data sa pamamagitan ng pagharang sa lahat ng paparating na proseso:

Ipinaliwanag ng gabay na ito ang mga diskarte para sa pagbabasa ng mga JSON file sa Node.js.

Konklusyon

Para basahin ang data ng JSON file sa Node.js, gamitin ang “ nangangailangan ” na paraan habang kinukuha nito ang data ng anumang uri ng file o panlabas na mga module. Bukod dito, ang ' readFile() 'at' readFileSync() 'mga function ng' fs ” modyul ay maaari ding gamitin upang maisagawa ang gawaing ito. Sa sandaling makuha ang data ng file gamit ang mga function na ito, pagkatapos ay ilapat ang ' JSON.parse() ” paraan upang gawing nababasa ang nilalaman. Ipinaliwanag ng gabay na ito ang mga pamamaraan at function na nakakatulong sa pagbabasa ng mga JSON file sa Node.js.