Табдилдиҳандаи YAML ба JSON-и ройгон
YAML-ро ба JSON ва JSON-ро ба YAML дар ҳарду самт табдил диҳед. Дар ҳар формат гузоред ва натиҷаи табдилшударо фавран гиред — боркунии сервер лозим нест.
Баромад дар ин ҷо пайдо мешавад…Чӣ тавр он кор мекунад
Ҳарду самти табдил — YAML ба JSON ва JSON ба YAML — пурра дар браузери шумо бо таҳлилгар ва тавлидгари дастнавис, ки ба саҳифа сохта шудааст, кор мекунад, бидуни ягон китобхонаи тарафи-сеюми YAML ва ягон дахли сервер. Мантиқ дар як модули TypeScript (lib/yamljson.ts) зиндагӣ мекунад, ки харитабандиҳо, пайдарпайиҳо, скалярҳо, сатрҳои нохунакдор ва баровардани шарҳи inline-ро идора мекунад.
- 1Вуруд хат-ба-хат пеш-коркард карда мешавадБарои вуруди YAML, таҳлилгар матнро ба хатҳо тақсим карда, шарҳҳои inline-ро мебарорад (пайгирии ҳолати нохунак, то аз баровардани # дар дохили сатрҳо канорагирӣ шавад), умқи хатбандиро чен мекунад ва хатҳои холиро мепартояд — рӯйхати сохтории нишонаҳоро пеш аз оғози ягон таҳлил месозад.
- 2Таҳлилгари насли-рекурсивӣ дарахти маълумотро месозадТаҳлилгар рӯйхати нишонаро бо истифодаи сатҳи хатбандӣ барои муайян кардани сохтор тай мекунад. Он вурудиҳои пайдарпайи (- value), калидҳои харитабандӣ (key: value) ва блокҳои гирифторро мешиносад. Скалярҳо тавассути қадами мутобиқати навъдор мегузаранд, ки null, булиан, бутунҳо (радди қимматҳои сифр-пешрав ба монанди 007, то аз вайроншавии хомӯши маълумот пешгирӣ шавад) ва даҳдаҳиро идора мекунад — бо ҳолати ихтиёрие ки калимаҳои холиси YAML 1.1 ба монанди yes, no, on ва off-ро ҳамчун сатр нигоҳ медорад, на ба булиан табдил кунад.
- 3Хусусиятҳои дастгирнашудаи YAML тамғагузорӣ, на хомӯшона партофта мешавандПеш аз баровардани натиҷа, абзор лангарҳо (&name), тахаллусҳо (*name), калидҳои омезиш (<<:), скалярҳои блок (| ва >), нишонаҳои бисёр-ҳуҷҷатӣ (---) ва калидҳои харитабандии такрориро скен мекунад. Ҳар кадоме аз ин огоҳии намоёнро фаъол мекунад, на JSON-и нозукона нодурустро тавлид кунад.
- 4JSON сериализатсия карда мешавад ё YAML бароварда мешавад, сипас дастрас мешавадБарои YAML→JSON, қиммати таҳлилшуда ба JSON.stringify бо хатбандии интихобии шумо (2 фосила, 4 фосила, tab ё фишурда) супорида мешавад. Барои JSON→YAML, тавлидгари фармоишӣ қиммати JavaScript-и таҳлилшударо тай карда, YAML-и хатбандишударо тавлид мекунад, скалярҳои сатрро танҳо вақте лозим бошад дар нохунак мегузорад (масалан, қимматҳое ки :, # доранд ё ба калимаи захирашуда монанданд). Натиҷа фавран ҳангоми навиштан пайдо мешавад ва метавонад нусхабардорӣ ё боргирӣ шавад.
Абзорҳои марбут
Табдилдиҳандаи JSON ба XML
JSON-ро ба XML ва XML-ро ба JSON, дар ҳарду самт, бо нигоҳдории атрибутҳо ва массивҳо табдил диҳед. Пурра дар браузери шумо кор мекунад — чизе бор намешавад.
CSV ба JSON
CSV (ё TSV)-ро ба JSON — массиви объектҳо ё массивҳо — бо таҳлилгари дурусти RFC 4180, муайянкунии худкори ҷудокунанда ва табдили навъ табдил диҳед. Дар браузери шумо кор мекунад.
Рамзкушои JWT
Ҳар токени JSON Web-ро рамзкушоӣ ва тафтиш кунед. Сарлавҳа, борро, мӯҳлати анҷом ва даъвоҳои стандартиро бубинед. Ҳама чиз маҳаллан дар браузери шумо кор мекунад — токенҳо ҳеҷгоҳ дастгоҳи шуморо тарк намекунанд.