JSON से GraphQL स्कीमा जनरेटर ऑनलाइन
एक JSON सैंपल को GraphQL SDL टाइप डेफिनिशन में बदलें, सीधे आपके ब्राउज़र में। आप जो भी पेस्ट करते हैं वह कहीं अपलोड नहीं होता।
JSON से GraphQL स्कीमा जनरेटर पूरी तरह आपके ब्राउज़र में चलता है। आप जो JSON सैंपल पेस्ट करते हैं और जो SDL यह बनाता है, वह कभी ArrayKit पर अपलोड नहीं होता।
JSON to TypeScript कन्वर्टर खोलें
JSON से GraphQL के बारे में
JSON to GraphQL Schema एक JSON सैंपल को इस्तेमाल के लिए तैयार GraphQL SDL डॉक्यूमेंट में बदल देता है। एक ऑब्जेक्ट पेस्ट करें और यह एक `type Root` ब्लॉक निकालता है, नंबर्स को Int या Float में, स्ट्रिंग्स को String में, बूलियन को Boolean में, और id नाम वाली किसी भी key को ID स्केलर में मैप करता है। ऐरे नॉन-नल लिस्ट टाइप्स बन जाते हैं जैसे [String!]!, और नेस्टेड ऑब्जेक्ट्स को उनके अपने नामित टाइप्स में अलग कर दिया जाता है (फ़ील्ड key से PascalCase), ताकि स्कीमा पढ़ने में आसान रहे, गहराई से इनलाइन न हो। यह तब उपयोगी है जब आप किसी सैंपल रिस्पॉन्स से GraphQL API प्रोटोटाइप कर रहे हों, किसी REST एंडपॉइंट को माइग्रेट कर रहे हों, या बैकएंड बनने से पहले रिज़ॉल्वर्स स्केच कर रहे हों। एक कस्टम रूट टाइप नाम सेट करें, जनरेट किया गया SDL कॉपी करें, या इसे .graphql फ़ाइल के रूप में डाउनलोड करें। सब कुछ आपके ब्राउज़र में लोकली चलता है — आपका JSON सैंपल कहीं भी अपलोड नहीं होता।
विशेषताएँ
- किसी भी JSON ऑब्जेक्ट से पूरा GraphQL `type` ब्लॉक निकालता है
- नंबर्स को Int या Float में मैप करता है, इस आधार पर कि वे पूर्ण संख्याएं हैं या नहीं
- "id" फ़ील्ड को पहचानकर उसे GraphQL के ID स्केलर के रूप में टाइप करता है
- नेस्टेड ऑब्जेक्ट्स को अपने आप उनके अपने नामित टाइप्स में बदल देता है
- ऐरे नॉन-नल लिस्ट टाइप्स बन जाते हैं, जैसे tags: [String!]!
- स्कीमा में दोहराए गए नेस्टेड टाइप नामों को डीड्यूप करता है
- कस्टम रूट टाइप नाम फ़ील्ड, डिफ़ॉल्ट "Root"
- SDL कॉपी करें या इसे .graphql फ़ाइल के रूप में डाउनलोड करें, सब कुछ क्लाइंट-साइड
JSON से GraphQL का उपयोग कैसे करें
- इनपुट पैन में एक JSON ऑब्जेक्ट पेस्ट करें, या उदाहरण लोड करें
- वैकल्पिक रूप से एक रूट टाइप नाम सेट करें
- दाईं ओर जनरेट किया गया GraphQL SDL देखें
- स्कीमा कॉपी करें या इसे .graphql फ़ाइल के रूप में डाउनलोड करें
उदाहरण
इनपुट
{"id":1,"name":"Ada"}
आउटपुट
type Root {
id: ID!
name: String!
}
id फ़ील्ड को ID के रूप में टाइप किया जाता है, और name एक नॉन-नल String बन जाता है।
सामान्य त्रुटियाँ और समस्या निवारण
- हर फ़ील्ड ज़रूरी (String!) है लेकिन कुछ रिस्पॉन्स में यह key मौजूद नहीं होती। — उन फ़ील्ड्स के लिए `null` वाला एक प्रतिनिधि सैंपल शामिल करें जो गायब हो सकती हैं — JSON से GraphQL स्कीमा जनरेटर null या अनुपस्थित मानों को ! जोड़ने के बजाय nullable बना देता है।
- एक ऐरे फ़ील्ड ने टाइप्ड लिस्ट के बजाय [String]! दिया। — सैंपल ऐरे में कम से कम एक नॉन-नल एलिमेंट रखें ताकि टूल उसका एलिमेंट टाइप निकाल सके; खाली ऐरे डिफ़ॉल्ट रूप से [String] इस्तेमाल करते हैं।
- दो अलग-अलग नेस्टेड ऑब्जेक्ट्स ने एक ही टाइप नाम जनरेट कर दिया। — पेस्ट करने से पहले किसी एक JSON key का नाम बदलें, या बाद में जनरेट किए गए SDL में टाइप का नाम बदलें — जनरेटर नाम के आधार पर डीड्यूप करता है, इसलिए एक जैसी keys एक ही टाइप शेयर करती हैं।
- बैनर "Invalid JSON" दिखाता है और कोई स्कीमा नहीं आती। — ट्रेलिंग कॉमा, बिना कोट्स वाली key, या सिंगल कोट्स जांचें — टूल को स्ट्रिक्ट JSON चाहिए, और एरर मैसेज में सुधार के लिए लाइन और कॉलम दिया होता है।
अक्सर पूछे जाने वाले प्रश्न
- JSON से GraphQL स्कीमा जनरेटर क्या बनाता है?
- यह एक JSON सैंपल पढ़ता है और GraphQL SDL आउटपुट करता है — एक या अधिक `type` ब्लॉक, फ़ील्ड नामों और निकाले गए स्केलर, लिस्ट या ऑब्जेक्ट टाइप्स के साथ — जिन्हें आप सीधे GraphQL स्कीमा फ़ाइल में डाल सकते हैं।
- यह Int, Float, ID और String में कैसे तय करता है?
- पूर्ण संख्याएं Int बन जाती हैं और दशमलव Float; कोई भी फ़ील्ड जिसका नाम शाब्दिक रूप से "id" है उसे GraphQL के ID स्केलर के रूप में टाइप किया जाता है; टेक्स्ट String बन जाता है और true/false Boolean।
- क्या JSON to GraphQL टूल नेस्टेड ऑब्जेक्ट्स और ऐरे को हैंडल करता है?
- हां। नेस्टेड ऑब्जेक्ट्स अपने खुद के नामित GraphQL टाइप (फ़ील्ड key से PascalCase) बन जाते हैं, और ऐरे नॉन-नल लिस्ट टाइप्स बन जाते हैं जैसे [String!]!, जिसमें एलिमेंट टाइप पहले आइटम से निकाला जाता है।
- क्या मैं जनरेट किए गए रूट टाइप का नाम बदल सकता हूं?
- हां। रूट टाइप नाम फ़ील्ड का उपयोग करें — डिफ़ॉल्ट "Root" है लेकिन स्कीमा कॉपी करने से पहले आप इसे कुछ भी सेट कर सकते हैं, जैसे "User" या "Product"।
- क्या मेरा JSON सैंपल कहीं अपलोड होता है?
- नहीं। JSON से GraphQL स्कीमा जनरेटर पूरी तरह आपके ब्राउज़र में चलता है। आप जो JSON पेस्ट करते हैं और जो SDL जनरेट होता है, वह कभी आपकी डिवाइस से बाहर नहीं जाता।
- अमान्य या गलत बने JSON के साथ क्या होता है?
- टूल एक टूटी हुई स्कीमा जनरेट करने के बजाय समस्या का नाम बताते हुए और जहां संभव हो लाइन व कॉलम के साथ एक एरर बैनर दिखाता है।
संबंधित टूल
सभी ArrayKit टूल