Korištenje JSON Gem u Ruby

Lako je uskočiti u analizu i generiranje JSON u Ruby s JSON dragulj. Pruža API za raščlanjivanje JSON-a iz teksta, kao i generiranje JSON teksta iz proizvoljnih Ruby objekata. Jednostavno se najčešće koristi knjižnica JSON u Rubyju.

Instaliranje JSON Gem-a

Na Ruby 1.8.7 morat ćete instalirati dragulj. Međutim, u Ruby 1.9.2 JSON dragulj se isporučuje s osnovnom Ruby distribucijom. Dakle, ako koristite 1.9.2, vjerojatno ste spremni. Ako imate 1.8.7, morat ćete instalirati dragulj.

Prije nego što instalirate JSON dragulj, prvo shvatite da je ovaj dragulj distribuiran u dvije varijante. Jednostavno instaliranje ovog dragulja s gem instalirati json instalirat će varijantu C proširenja. Ovo zahtijeva a C prevodilac za instaliranje i možda neće biti dostupni ili prikladni na svim sustavima. Iako možete instalirati ovu verziju, trebali biste.

Ako ne možete instalirati verziju proširenja C, trebali biste gem instalirati json_pure umjesto toga. To je isti dragulj implementiran u čistoj Ruby. Trebao bi se izvoditi svugdje gdje se pokreće Ruby kod, na svim platformama i na raznim tumačima. Međutim, znatno je sporiji od verzije C proširenja.

instagram viewer

Jednom instaliran, nekoliko je načina kako zahtijevati ovaj dragulj. zahtijevati 'json' (nakon preduvjeta zahtijevaju "rubygems" ako je potrebno) trebat će ovisno koja je inačica dostupna i preferirat će varijantu C proširenja ako su obje instalirane. zahtijevaju 'json / pure' izričito će zahtijevati čistu varijantu, i a zahtijevaju 'json / ext' izričito će zahtijevati varijantu C proširenja.

Razgledavanje JSON-a

Prije nego što započnemo, definirajmo nekoliko jednostavnih JSON-a za raščlanjivanje. JSON obično generiraju web aplikacije i mogu biti prilično zastrašujući, s dubokim hijerarhijama koje je teško kretati. Počet ćemo s nečim jednostavnim. Najviša razina ovog dokumenta je hash, prve dvije tipke drže nizove, a posljednje dvije tipke sadrže nizove nizova.

Dakle, raščlanjivanje je vrlo jednostavno. Pod pretpostavkom da je ovaj JSON pohranjen u datoteci pod nazivom employees.json, možete to raščlaniti u Ruby objekt.

I rezultat ovog programa. Imajte na umu da ako ovaj program pokrećete na Ruby 1.8.7, redoslijed ključeva dohvaćen iz hash-a nije nužno isti redoslijed koji su umetnuti. Stoga se vaš izlaz može pojaviti izvan reda.

empls objekt sam po sebi je samo hash. Ništa posebno u tome. Ima 4 ključa, baš kao što je imao i JSON dokument. Dvije tipke su žice, a dvije su nizovi nizova. Nema iznenađenja, JSON je vjerno prepisan u Ruby objekte na vašu provjeru.

I to je otprilike sve što trebate znati o raščlanjivanju JSON-a. Pojavljuju se neka pitanja, ali o njima ćemo govoriti u kasnijem članku. Za svaki slučaj jednostavno pročitajte JSON dokument iz datoteke ili preko HTTP-a i unesete ga JSON.parse.