Je ľahké skočiť na analýzu a generovanie JSON v Ruby s json gem. Poskytuje API na analýzu JSON z textu a na generovanie JSON textu z ľubovoľných objektov Ruby. Je to ľahko najpoužívanejšia knižnica JSON v Ruby.
Inštalácia JSON Gem
Na Ruby 1.8.7 budete musieť nainštalovať drahokam. Avšak v Ruby 1.9.2 json drahokam je dodávaný s jadrovou distribúciou Ruby. Takže, ak používate 1.9.2, ste pravdepodobne všetci v poriadku. Ak používate 1.8.7, musíte nainštalovať drahokam.
Pred inštaláciou drahokam JSON si najprv uvedomte, že tento drahokam je distribuovaný v dvoch variantoch. jednoducho inštalácia tohto drahokamu s gem install json nainštaluje variant rozšírenia C. To si vyžaduje a C kompilátor inštalovať a nemusí byť k dispozícii alebo vhodné vo všetkých systémoch. Aj keď si môžete nainštalovať túto verziu, mali by ste.
Ak nemôžete nainštalovať verziu rozšírenia C, mali by ste gem install json_pure miesto. Toto je ten istý skvost implementovaný v čistom Ruby. Malo by bežať všade, kde beží kód Ruby, na všetkých platformách a na rôznych tlmočníkoch. Je však podstatne pomalšia ako verzia rozšírenia C.
Po inštalácii existuje niekoľko spôsobov, ako požadovať tento klenot. vyžadovať 'json' (po nevyhnutnej podmienke vyžadovať „rubygemy“ v prípade potreby) bude vyžadovať ktorýkoľvek variant, ktorý je k dispozícii, a uprednostnia variant rozšírenia C, ak sú oba nainštalované. vyžadovať „json / pure“ bude výslovne vyžadovať čistý variant a vyžadovať 'json / ext' bude výslovne vyžadovať variant rozšírenia C.
Analyzuje JSON
Predtým, ako začneme, definujme jednoduchý JSON na analýzu. JSON je zvyčajne generovaný webovými aplikáciami a môže byť celkom skľučujúci, s hlbokými hierarchiami, ktoré sa ťažko navigujú. Začneme s niečím jednoduchým. Najvyššou úrovňou tohto dokumentu je hash, prvé dve kľúče obsahujú reťazce a posledné dve kľúče obsahujú polia reťazcov.
Parsovanie je teda dosť jednoduché. Za predpokladu, že tento JSON je uložený v súbore s názvom employees.json, môžete takto analyzovať objekt Ruby.
A výstup tohto programu. Všimnite si, že ak tento program používate na Ruby 1.8.7, poradie, v ktorom sú kľúče prevzaté z kódu hash, nemusí byť nevyhnutne v rovnakom poradí, v akom sú vložené. Váš výstup sa preto môže javiť ako nefunkčný.
empls samotný objekt je iba hash. Na tom nie je nič zvláštne. Má 4 kľúče, rovnako ako dokument JSON. Dva z kľúčov sú reťazce a dva reťazce. Žiadne prekvapenie, JSON bol pre vaše podozrenie verne prepísaný v Ruby objektoch.
A to je o všetkom, čo potrebujete vedieť o analýze JSON. Sú niektoré problémy, ktoré sa objavia, ale tie sa budú zaoberať v ďalšom článku. Pre takmer každý prípad si jednoducho prečítate dokument JSON zo súboru alebo cez HTTP a odovzdáte ho JSON.parse.