Ir viegli pāriet uz parsēšanu un ģenerēšanu JSON Rubīnā Ar json dārgakmens. Tas nodrošina API JSON parsēšanai no teksta, kā arī JSON teksta ģenerēšanai no patvaļīgiem Ruby objektiem. Tā ir visizplatītākā JSON bibliotēka Rubīnā.
JSON Gem instalēšana
Uz Ruby 1.8.7 jums būs jāinstalē dārgakmens. Tomēr Ruby 1.9.2 json dārgakmens ir saistīts ar galveno Rubīna sadalījumu. Tātad, ja jūs izmantojat 1.9.2, jūs droši vien esat gatavs. Ja izmantojat 1.8.7, jums būs jāinstalē dārgakmens.
Pirms JSON dārgakmens instalēšanas vispirms saprotiet, ka šis dārgakmens ir sadalīts divos variantos. Vienkārši instalējot šo dārgakmeni ar dārgakmens instalēt json instalēs C paplašinājuma variantu. Tam nepieciešams C sastādītājs instalēt un var nebūt pieejams vai piemērots visām sistēmām. Lai gan, ja jūs varat instalēt šo versiju, jums vajadzētu.
Ja nevarat instalēt C paplašinājuma versiju, jums to vajadzētu veikt dārgakmens instalēt json_pure tā vietā. Šis ir tas pats dārgakmens, kas ieviests tīrā rubīnā. Tam vajadzētu darboties visur, kur darbojas Ruby kods, visās platformās un dažādiem tulkiem. Tomēr tas ir ievērojami lēnāks nekā C paplašinājuma versija.
Pēc uzstādīšanas ir daži veidi, kā pieprasīt šo dārgakmeni. A prasīt 'json' (pēc priekšnoteikuma pieprasīt “rubingemus” ja nepieciešams), būs nepieciešams, izvēloties pieejamo variantu, un dos priekšroku C paplašinājuma variantam, ja abi ir instalēti. A pieprasīt “json / pure” skaidri prasīs tīru variantu, un a pieprasīt “json / ext” tieši prasīs C paplašinājuma variantu.
JSON parsēšana
Pirms darba sākšanas definēsim dažus vienkāršus JSON parsētus. JSON parasti ģenerē tīmekļa lietojumprogrammas, un tas var būt diezgan biedējošs, ar dziļām hierarhijām, kuras ir grūti orientēties. Mēs sāksim ar kaut ko vienkāršu. Šī dokumenta augšējais līmenis ir hash, pirmie divi taustiņi satur virknes, bet pēdējie divi taustiņi satur virkņu masīvu.
Tāpēc parsēšana ir diezgan vienkārša. Pieņemot, ka šis JSON tiek saglabāts failā ar nosaukumu darbinieki.jsons, jūs to varat parsēt par Ruby objektu.
Un šīs programmas izeja. Ņemiet vērā: ja jūs darbināt šo programmu ar Ruby 1.8.7, taustiņu izgūšanas secība no hash nav obligāti tāda pati kā tie tiek ievietoti. Tātad jūsu iznākums var izrādīties nederīgs.
iztukšo pats objekts ir tikai hash. Nekas īpašs tajā nav. Tam ir 4 atslēgas, tāpat kā JSON dokumentam. Divi no taustiņiem ir virknes, bet divi - virkņu bloki. Nav pārsteigumu, ka JSON ticami tika pārrakstīts Ruby objektos, lai jūs tos iepazīstinātu.
Un tas ir viss, kas jums jāzina par JSON parsēšanu. Ir daži jautājumi, kas rodas, bet tie tiks apskatīti vēlāk rakstā. Gandrīz katrā gadījumā jūs vienkārši izlasāt JSON dokumentu no faila vai, izmantojot HTTP, un padevējat to JSON.parse.