JSONPath से JSON Query

JSONPath से JSON क्वेरी करें: वाइल्डकार्ड, रिकर्सिव डिसेंट, स्लाइस और [?(@.price < 10)] जैसे फ़िल्टर एक्सप्रेशन। टाइप करते ही नतीजे अपडेट होते हैं। jq सिंटैक्स नहीं।

उदाहरण:
परिणाम

$ रूट है; .name या ['name'] चाइल्ड चुनता है; [0] ऐरे का आइटम; [*] सभी आइटम; .. किसी भी गहराई पर खोजता है; [?(@.price < 10)] फ़िल्टर करता है; [-1:] आखिरी आइटम लेता है।

पूरी तरह आपके ब्राउज़र में चलता है। आपका डेटा कभी अपलोड नहीं होता।

संबंधित टूल्स

सभी देखें

JSON Query (JSONPath) क्या है?

JSON Query टूल आपके JSON पर JSONPath एक्सप्रेशन चलाता है और हर मिलते हुए मान को JSON ऐरे के रूप में दिखाता है। यह वाइल्डकार्ड, रिकर्सिव डिसेंट, ऐरे स्लाइस और फ़िल्टर एक्सप्रेशन का समर्थन करता है। ध्यान दें: यह JSONPath सिंटैक्स ($.store.book[*].title) इस्तेमाल करता है, jq का पाइप सिंटैक्स नहीं।

JSON Query (JSONPath) का उपयोग कैसे करें

  1. JSON को JSON इनपुट बॉक्स में पेस्ट करें (या किसी उदाहरण पर क्लिक करें, जो नमूना डेटा भी लोड करता है)।
  2. JSONPath एक्सप्रेशन टाइप करें, जैसे $..price।
  3. आउटपुट में मिलते हुए मान पढ़ें; लेबल बताता है कि कितने मिले।
  4. परिणाम ऐरे को कॉपी करें से कॉपी करें।

उदाहरण

इनपुट
{"store":{"book":[{"title":"A","price":8},{"title":"B","price":12}]}}
Query: $.store.book[?(@.price < 10)].title
आउटपुट
[
  "A"
]

JSON Query (JSONPath) का उपयोग कब करें

JSONPath स्वीकार करने वाले टूल (API गेटवे, Kubernetes kubectl -o jsonpath, टेस्ट फ्रेमवर्क, मॉनिटरिंग) में इस्तेमाल से पहले JSONPath एक्सप्रेशन टेस्ट करने के लिए इसका उपयोग करें। अगर आपको पाइप, map या ऑब्जेक्ट निर्माण जैसी jq सुविधाएँ चाहिए तो jq ही इस्तेमाल करें – वे यहाँ समर्थित नहीं हैं। एक सटीक पाथ के लिए JSON Path Finder सरल है।

JSON Query (JSONPath) कैसे काम करता है

क्वेरी jsonpath-plus लाइब्रेरी (Goessner JSONPath और एक्सटेंशन) से चलाई जाती हैं। $ रूट है, .name या ['name'] प्रॉपर्टी चुनता है, [0] इंडेक्स, [*] सभी चाइल्ड, .. हर गहराई पर खोजता है, [start:end] ऐरे को स्लाइस करता है (ऋणात्मक इंडेक्स अंत से गिने जाते हैं) और [?(…)] @ को वर्तमान आइटम मानकर फ़िल्टर करता है। फ़िल्टर एक्सप्रेशन jsonpath-plus के सुरक्षित मूल्यांकनकर्ता में चलते हैं, जो तुलना और लॉजिकल ऑपरेटर समर्थित करता है पर मनमाना JavaScript नहीं चलाता। परिणाम हमेशा मिलानों का ऐरे होता है, जो 2 स्पेस इंडेंटेशन के साथ छपता है।

सामान्य उपयोग मामले

  • API रिस्पॉन्स से सारी कीमतें या id निकालना
  • API टेस्ट या मॉनिटरिंग नियमों के लिए JSONPath टेस्ट करना
  • किसी शर्त से ऐरे आइटम फ़िल्टर करना
  • kubectl jsonpath शैली की क्वेरी का प्रोटोटाइप बनाना

सुरक्षा नोट

सब कुछ आपके ब्राउज़र में ही चलता है; आप जो कोड पेस्ट करते हैं वह कहीं अपलोड नहीं होता।

अक्सर पूछे जाने वाले प्रश्न

क्या यह jq है?

नहीं। यह JSONPath इस्तेमाल करता है, जो अलग क्वेरी भाषा है। jq के पाइप और फ़ंक्शन समर्थित नहीं हैं।

परिणाम हमेशा ऐरे क्यों होता है?

JSONPath एक्सप्रेशन कितने भी मान मिला सकता है, इसलिए सभी मिलान एक ऐरे में लौटाए जाते हैं।

क्या मेरा JSON किसी सर्वर को भेजा जाता है?

नहीं, क्वेरी आपके ब्राउज़र में चलती है।

क्या यहाँ बड़ी संख्याओं की सटीकता खो जाती है?

हाँ, मान JavaScript संख्याओं के रूप में मूल्यांकित होते हैं, इसलिए 2^53 से बड़े पूर्णांक क्वेरी परिणाम में राउंड हो सकते हैं।

सुझाए गए अगले कदम

JSON से TypeScript
JSON नमूने से TypeScript interface या type alias बनाएँ, वैकल्पिक कुंजियों, null यूनियन और ऐरे से अनुमानित नेस्टेड टाइप के साथ। मुफ़्त और निजी।
JSON से Go Struct
JSON को Go struct में बदलें: एक्सपोर्टेड फ़ील्ड नाम, json टैग, null के लिए पॉइंटर टाइप और वैकल्पिक omitempty के साथ। नेस्टेड ऑब्जेक्ट और ऐरे संभालता है। मुफ़्त।
JSON से Python
JSON को Python dataclass या TypedDict क्लास में बदलें, typing हिंट, Optional फ़ील्ड और निर्भरता क्रम में परिभाषित नेस्टेड क्लास के साथ। मुफ़्त, ब्राउज़र में।
एस्केप/अनएस्केप टूल
JSON, JavaScript, HTML, XML, URL कंपोनेंट, रेगुलर एक्सप्रेशन, SQL लिटरल, CSS स्ट्रिंग और शेल आर्ग्युमेंट के लिए स्ट्रिंग एस्केप या अनएस्केप करने का एक ही टूल।
JSON से XML
JSON को सही बने XML में बदलें: कॉन्फ़िगर करने योग्य रूट एलिमेंट, "@_" कुंजियों से एट्रिब्यूट, ऐरे के लिए दोहराए एलिमेंट और वैकल्पिक XML डिक्लेरेशन। मुफ़्त।
XML से JSON
XML को JSON में बदलें: एट्रिब्यूट प्रीफ़िक्स के साथ रखे जाते हैं, दोहराए एलिमेंट ऐरे बनते हैं, वैकल्पिक संख्या/बूलियन पार्सिंग और साफ़ सिंटैक्स त्रुटियाँ। मुफ़्त, ब्राउज़र में।

और श्रेणियाँ देखें