Command Palette

Search for a command to run...

اخ

اختبار JSONPath

اختبر تعبيرات JSONPath مقابل أي JSON وشاهد القيم المتطابقة ومساراتها على الفور. يدعم أحرف البدل، والنسب العودي، والشرائح، والمرشحات. 100% من جانب العميل.

ما هو اختبار JSONPath؟

يقوم مختبر JSONPath بتقييم تعبير JSONPath مقابل مستند JSON وإرجاع كل قيمة يختارها التعبير، بالإضافة إلى المسار الدقيق لكل مطابقة. JSONPath هي لغة استعلام لـ JSON، والطريقة التي تكون بها XPath لغة استعلام لـ XML: تكتب مسارًا قصيرًا مثل $.store.book[*].author وتعيد قائمة القيم المطابقة دون كتابة أي تعليمات برمجية. تقوم هذه الأداة بتحليل JSON الخاص بك، وتشغيل التعبير، وإظهار النتائج والمسار الطبيعي لكل منها.

الهدف من الاختبار هو ردود الفعل. عندما لا يُرجع تعبير JSONPath شيئًا، أو يُرجع أكثر مما توقعت، تكون المشكلة دائمًا تقريبًا عبارة عن تفاصيل بناء جملة صغيرة: حرف بدل مفقود، أو نمط قوس خاطئ، أو مرشح يقارن سلسلة برقم. يؤدي تشغيل الاستعلام مباشرة مقابل البيانات الحقيقية، ومعرفة العقد التي يلمسها، إلى تحويل هذا التخمين إلى فحص لمدة ثانيتين. وهذا هو نفس السبب الذي يجعل المطورين يبقون جهاز اختبار regex مفتوحًا بجوار المحرر الخاص بهم.

كل شيء يعمل في متصفحك. يتم تحليل JSON باستخدام محلل JSON المدمج ويتم تقييم التعبير بواسطة مترجم صغير مكتوب بلغة JavaScript، لذلك لا يتم تحميل أي شيء أو تسجيله أو تخزينه. وهذا مهم لأن عمل JSONPath يحدث عادةً مقابل استجابات واجهة برمجة التطبيقات وملفات التكوين التي تحمل الرموز المميزة أو المعرفات أو سجلات العملاء، وتحتفظ هذه الأداة بهذه الحمولة على جهازك الخاص وتستمر في العمل دون اتصال بالإنترنت بمجرد تحميل الصفحة.

JSONPath عبارة عن اتفاقية تحتوي على العديد من التطبيقات بدلاً من مواصفات واحدة، وهم يختلفون عند الحواف. بناء جملة التصفية هو الجزء الأقل قابلية للحمل، لذا فإن التعبير الذي يعمل في مكتبة واحدة قد يحتاج إلى تعديل في مكتبة أخرى. النسب العودي هو العملية المكلفة: فهو يمشي في كل عقدة في المستند، لذلك في ملف كبير، يكون الاستعلام الذي يبدأ بنقطتين أبطأ بشكل ملحوظ من المسار الصريح.

لتجربته كمقيم JSONPath عبر الإنترنت، انقر فوق تحميل العينة، واستبدل التعبير بـ $.store.book[؟(@.price < 10)].title وانقر فوق Evaluate. يُرجع وضع القيم ["Sayings of the Century"، "Moby Dick"] مع وضع علامة على الجزء 2 نتيجة. قم بتبديل الإخراج إلى المسارات وانقر فوق "تقييم" مرة أخرى، وسيُرجع نفس الاستعلام $.store.book[0].title و$.store.book[2].title، الذي يخبرك بأن الفلتر تخطى الكتب في الفهرس 1 و3. قم بتغيير التعبير إلى $..السعر وستحصل على خمسة أرقام، لأن النسب العودي يصل أيضًا إلى الدراجة.

كيفية استخدام جهاز اختبار JSONPath؟

  1. الصق JSON الخاص بك

    الصق كائنًا أو مصفوفة في مربع JSON، أو انقر فوق تحميل عينة لمستند المكتبة. يجب أن يكون الإدخال JSON صالحًا؛ يظهر خطأ تحليل في رسالة المتصفح الخاص بك، والتي عادةً ما تحدد الموضع حتى تتمكن من إصلاحه.

  2. اكتب تعبير JSONPath

    أدخل مسارًا مثل $.store.book[*].title أو $..price. ابدأ من $ للجذر، واستخدم النقاط أو الأقواس للأطفال، وأضف عوامل تصفية مثل [؟(@.price < 10)] للاختيار حسب القيمة.

  3. اقرأ المباريات

    انقر فوق تقييم لتشغيل التعبير؛ يسرد جزء المطابقات كل قيمة متطابقة ويظهر عدد النتائج. قم بتبديل الإخراج إلى المسارات أو الإدخالات وانقر فوق تقييم مرة أخرى لمعرفة مصدر كل نتيجة.

  4. انسخ النتيجة

    انسخ القيم المطابقة أو قائمة المسارات أو إدخالات المسار والقيمة الكاملة كـ JSON للصقها في التعليمات البرمجية أو الاختبارات أو الوثائق الخاصة بك.

الميزات الرئيسية

  • بناء جملة المسار الكامل

    الجذر، والطفل، والنسب العودي (..)، وحرف البدل (*)، وفهرس المصفوفة بما في ذلك الفهرس السلبي، والاتحادات، وشرائح نمط بايثون كلها مدعومة، لذا فإن معظم أمثلة JSONPath المنشورة تعمل دون تغيير.

  • تصفية التعبيرات

    حدد العقد حسب القيمة باستخدام عوامل التصفية مثل [؟(@.price < 10 & @.category == "fiction")]. عوامل المقارنة، والتحقق من الوجود، و&&/|| يتم تقييم المجموعات لكل عنصر.

  • القيم أو المسارات أو الإدخالات

    راجع القيم المتطابقة، أو المسار الطبيعي لكل مطابقة، أو كليهما معًا كإدخالات. يعد إخراج المسار مفيدًا لبناء التعبير الذي تحتاجه.

  • مسح رسائل الخطأ

    يتم الإبلاغ عن JSON غير الصالح والتعبيرات المشوهة بشكل منفصل برسالة محددة، حتى تعرف ما إذا كان سيتم إصلاح البيانات أو الاستعلام بدلاً من التحديق في نتيجة فارغة.

Frequently Asked Questions

JSONPath هي لغة استعلام لـ JSON، تم تصميمها على XPath لـ XML. يصف تعبير مثل $.store.book[0].title مسارًا عبر المستند، ويقوم تقييمه بإرجاع القيمة أو القيم في هذا المسار. يتم استخدامه على نطاق واسع في أدوات اختبار API والبوابات وأنظمة التكوين لاستخراج أو مطابقة أجزاء من حمولة JSON.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!

jsonpath testerjsonpath evaluatorjson path onlinetest jsonpathjsonpath queryjsonpath filterjsonpath expressionquery jsonjsonpath onlinejsonpath online evaluatorjsonpath evaluator onlinejsonpath filter examples