מה זה JSON Diff Checker?
JSON Diff Checker משווה שני מסמכי JSON מבחינה מבנית ולא שורה אחר שורה. במקום לומר לך "שורה 14 שונה", הוא מנתח גם מסמכים וגם מדווח בדיוק אילו מפתחות נוספו, הוסרו או שונו - עם נתיבים מלאים כמו features.rateLimit או תגיות[2] - כך שתוכל לראות במבט חטוף מה השתנה בין שתי תגובות API, קבצי תצורה או מניפסטים של חבילה.
כלי הבדל מבוססי טקסט מייצרים רעש ב-JSON: מקשים מסודרים מחדש או הזחה שונה מופיעים כשינויים גם כאשר הנתונים זהים הבדל מבני מתעלם לחלוטין מעיצוב ומשווה את הערכים המנותחים הוא גם תופס מחלקה של באגים שקטים diffs להסתיר, כמו ערך המשתנה בשקט סוג מהמספר 3000 למחרוזת "3000" - מסומן כאן כערך מובהק "סוג שונה", כי ההבדל הזה שובר צרכנים מוקפדים למרות שהוא נראה זהה במבט חטוף.
ההשוואה מריצה צד לקוח בדפדפן שלך ה-JSON שאתה מדביק - מטענים API, הגדרות סביבה, ייצוא מסד נתונים - לעולם לא עוזב את המכשיר שלך, ולכן בטוח להשוות מסמכים ממערכות פנימיות או ייצור לחיצה על השווה שולחת רק בדיקת שימוש ורשומה של כמה הבדלים נמצאו אין הרשמה, אין העלאה והכלי עובד במצב לא מקוון ברגע שהדף נטען.
Load Sample מראה מה בודק ההבדלים של JSON מדווח כאשר אתה משווה שני קבצי JSON הנבדלים זה מזה בכל דרך למקור יש "גרסה": "1.4.0", "יציאה": 3000 ו-rateLimit 100; לקובץ המעודכן יש "1.5.0", "יציאה": "3000", rateLimit 250, מפתח מדדים חדש ותג שלישי. השווה החזרות 5 הבדלים: +2 נוסף (features.metrics, תגיות[2]), ~2 השתנה (גרסה, features.rateLimit) וסוג !1 השתנה (יציאה). Copy Report הופך את זה לחמש שורות מסומנות, החל מ~ גרסה: "1.4.0" → "1.5.0".
השוואה מבנית ולא כטקסט היא מה שהופך את התוצאה לקריאה, והיא נשענת על עובדה לגבי JSON שטקסט diff לא יכול להשתמש בה: מקשי אובייקט אינם מסודרים לפי מפרט, כך ששני מסמכים הנבדלים רק בסדר המפתחות הם אותו מסמך, ו הבדל מבוסס שורה ידווח על כל שורה כפי שהשתנה מערכים הם הפוכים, מכיוון שסדר במערך הוא בעל משמעות, ולכן רשימה מסודרת מחדש היא הבדל אמיתי כברירת מחדל האפשרות להתעלם מסדר מערך קיימת למקרה הנפוץ שבו API מחזיר קבוצה בכל רצף שהוא אוהב מספרים מושווים לפי ערך, אז 1.0 ו-1 תואמים, וזה בדרך כלל מה שאתה רוצה ומסתיר מדי פעם שינוי סוג שינויים מסוג מדווחים בנפרד מסיבה זו, שכן שדה שעובר מהמספר 5 למחרוזת "5" שובר את הצרכנים תוך שהוא נראה כמעט זהה.
כיצד להשתמש ב-JSON Diff Checker?
הדבק את שני מסמכי JSON
הדבק את ה-JSON המקורי בחלונית השמאלית ואת ה-JSON המעודכן בחלונית הימנית, או לחץ על טען דוגמה כדי לראות דוגמה עובדת עם כל סוג הבדל.
בחר אפשרויות השוואה
אפשר "התעלם מסדר מערך" אם מיקום האלמנט אינו רלוונטי עבור הנתונים שלך - שימושי עבור רשימות תגים או ערכות זיהוי שבהן [1,2,3] צריך להיות שווה ל-[3,2,1].
לְהַ
לחץ על השווה שני המסמכים מאומתים תחילה - אם לשני הצדדים יש שגיאת תחביר, אתה מקבל את הודעת הניתוח המדויקת ומאיזה צד היא הגיעה.
סקור וייצא את ההבדל
קרא את ספירת הסיכום ולאחר מכן סרוק את טבלת ההבדלים עם נתיבי ה-JSON, הערכים הישנים והערכים החדשים שלהם. העתק את דוח ה-DIFF ללוח שלך כדי להדביק בהערת יחסי ציבור או כרטיס.
תכונות מפתח
מבני, לא טקסטואלי
משווה ערכים מנותחים, כך שהבדלי סדר מפתח, הזחה ורווחים ברווחים לעולם אינם מופיעים כשינויים כוזבים
נתיבי JSON מדויקים
כל הבדל מדווח עם הנתיב המלא שלו - features.rateLimit, users[3].email - כך שתוכלו לקפוץ ישר לשינוי
זיהוי סוג-שינוי
מספר שהופך למחרוזת (3000 → "3000") מסומן בנפרד משינוי ערך, תופס באגים מבדילים רגילים
התעלם מסדרת אפשרות הזמנת מערך
התייחס למערכים כאל סטים לא מסודרים כאשר מיקום האלמנט אינו רלוונטי, ומבטל רעש מרשימות ממוינות מחדש
Frequently Asked Questions
Related Tools
CSV Diff Checker
Compare two CSV files and see which rows were added, removed, or changed, down to the exact cell. Match rows by a key column or by position. Runs client-side.
Compare Two Lists
Compare two lists to find common items, items unique to each list, and duplicates within a list. Case-insensitive matching, any delimiter, instant set operations. Client-side.
XML Diff Checker
Compare two XML documents structurally and see which elements, attributes, and text values were added, removed, or changed, by node path rather than by line. 100% client-side.
YAML to JSON Converter
Convert YAML to JSON instantly - anchors, aliases, merge keys, block scalars and multi-document streams supported
Comments
0 comments
No comments yet. Be the first to share your thoughts!