API रिस्पॉन्स कम्पेरेटर कैसे इस्तेमाल करें
- रिस्पॉन्स A (जैसे staging) और रिस्पॉन्स B (जैसे production) पेस्ट करें।
- "अस्थिर फ़ील्ड नज़रअंदाज़ करें" चालू रखें, ज़रूरत हो तो और ignore path जोड़ें, और array क्रम का व्यवहार चुनें।
- तुलना करें। सारांश बताता है कि रिस्पॉन्स समतुल्य हैं या नहीं; तालिका हर अंतर उसके path के साथ दिखाती है।
- विज़ुअल diff के लिए लाइन व्यू इस्तेमाल करें और तालिका CSV में डाउनलोड करें।
API रिस्पॉन्स कम्पेरेटर की खूबियाँ
- अर्थ-आधारित JSON तुलना — key का क्रम और फ़ॉर्मैटिंग कभी अंतर नहीं गिने जाते
- एक चेकबॉक्स से अस्थिर फ़ील्ड (id, timestamp, etag, टोकन, cursor) नज़रअंदाज़ करें
- पैटर्न से path नज़रअंदाज़ करें: $.meta.requestId, $.items[*].updatedAt, **.etag या सिर्फ़ key का नाम
- वैकल्पिक रूप से array का क्रम अनदेखा करने और null को ग़ैरमौजूद मानने के मोड
- अंतर की तालिका (सिर्फ़ A में / सिर्फ़ B में / बदला हुआ / टाइप बदला), नज़रअंदाज़ किए फ़ील्ड की सूची और लाइन diff
API रिस्पॉन्स कम्पेरेटर का उदाहरण
Staging बनाम production
इनपुट:
A: { "status": "paid", "customer": { "id": "cust_9" }, "updatedAt": "2025-08-30T10:00:00Z" }
B: { "status": "PAID", "customer": { "id": "cust_9", "tier": "gold" }, "updatedAt": "2025-08-31T09:12:44Z" }आउटपुट:
Different · Added in B 1 · Changed 1 · Ignored: $.updatedAt
$.status changed "paid" → "PAID"
$.customer.tier only in B – → "gold"API रिस्पॉन्स कम्पेरेटर के बारे में अक्सर पूछे जाने वाले सवाल
"अस्थिर फ़ील्ड नज़रअंदाज़ करें" क्या करता है?
यह उन key को छोड़ देता है जो आम तौर पर हर एनवायरनमेंट और रिक्वेस्ट में अलग होते हैं — id, timestamp (createdAt, updatedAt…), etag, request/trace id, टोकन, cursor — ताकि diff में सिर्फ़ मायने रखने वाले अंतर दिखें।
ignore path कैसे काम करते हैं?
हर लाइन में एक पैटर्न: पूरा JSON path ($.meta.requestId), array wildcard ($.items[*].updatedAt), deep wildcard (**.etag) या सिर्फ़ key का नाम, जिससे वह हर जगह नज़रअंदाज़ हो जाए।
क्या key का क्रम मायने रखता है?
नहीं — तुलना अर्थ के आधार पर होती है। अगर आपका API सूचियाँ हर बार अलग क्रम में लौटाता है तो "array का क्रम नज़रअंदाज़ करें" चालू करें।
टाइप बदलने को अलग से क्यों दिखाया जाता है?
जो वैल्यू नंबर से स्ट्रिंग (या object से null) बन जाए, वह आम तौर पर क्लाइंट तोड़ देती है, इसलिए उसे साधारण वैल्यू बदलाव के बजाय टाइप बदलाव के रूप में गिना जाता है।
तकनीकी नोट्स
संरचनात्मक diff चलने से पहले नज़रअंदाज़ किए गए फ़ील्ड दोनों डॉक्युमेंट से हटा दिए जाते हैं। अस्थिर key की पहचान एक चुनी हुई regular expression से होती है (id, uuid, createdAt, updated_at, etag, requestId, nonce, token, cursor…)।