JSONPath টেস্টার

JSON-এর বিপরীতে JSONPath এক্সপ্রেশন পরীক্ষা করুন এবং টাইপ করার সাথে সাথে মিলে যাওয়া মান ও পাথগুলো দেখুন।

JSON ইনপুট
মিলে যাওয়া মানসমূহ
পরীক্ষা করতে JSON এবং একটি JSONPath এক্সপ্রেশন লিখুন।

আপনার JSON এবং JSONPath আপনার ব্রাউজারেই পরীক্ষা করা হয়। BroBroGo-তে কিছুই আপলোড করা হয় না।

জিজ্ঞাসিত প্রশ্নাবলী

আমি কোন ধরনের JSONPath সিনট্যাক্স ব্যবহার করতে পারি?

আপনি সাধারণ JSONPath প্যাটার্ন যেমন $.store.book[*].title, রিকার্সিভ ডিসেন্ট $..price, ফিল্টার [?@.price < 10] এবং অ্যারে স্লাইস ব্যবহার করতে পারেন।

কেন প্রতিটি ফলাফলের সাথে একটি পাথ দেখানো হয়?

পাথটি দেখায় যে সোর্স JSON-এর ঠিক কোথা থেকে মানটি এসেছে, যাতে আপনি এর অবস্থান না হারিয়েই ম্যাচটি কপি করতে পারেন।

কেন একটি কুয়েরি টাইম আউট হতে পারে?

খুব বিস্তৃত রিকার্সিভ কুয়েরি বা বিশাল নমুনা প্রসেস হতে অনেক সময় লাগতে পারে। টেস্টার একটি নির্দিষ্ট সময় পর এগুলো বন্ধ করে দেয় যাতে আপনি এক্সপ্রেশনটি ছোট করতে পারেন বা ছোট নমুনা ব্যবহার করতে পারেন।

JSONPath টেস্টার-এর পরিচিতি ও কার্যকারিতা

"JSONPath টেস্টার" হলো একটি অনলাইন টুল যা আপনাকে JSON ডেটার বিপরীতে বিভিন্ন JSONPath এক্সপ্রেশন পরীক্ষা করতে সাহায্য করে। এই টুলের মাধ্যমে আপনি আপনার JSON ডেটা এবং একটি নির্দিষ্ট JSONPath এক্সপ্রেশন ইনপুট হিসেবে প্রদান করে তাৎক্ষণিকভাবে পরীক্ষা সম্পন্ন করতে পারেন। টুলটি ইনপুট করা এক্সপ্রেশনের সাথে মিলে যাওয়া মানগুলো প্রদর্শন করার পাশাপাশি মূল JSON-এর ভেতরে সেগুলোর সুনির্দিষ্ট পাথ বা অবস্থানও দেখিয়ে দেয়। এর ফলে আপনার ব্যবহৃত JSONPath এক্সপ্রেশনটি JSON ডেটা থেকে ঠিক কোন কোন তথ্য বা মান বের করে আনছে, তা আপনি নিখুঁতভাবে বুঝতে পারবেন।

ইনপুট ও আউটপুট সীমা এবং ত্রুটিসমূহ

এই টুলটি ব্যবহারের ক্ষেত্রে ইনপুট এবং আউটপুটের জন্য নির্দিষ্ট কিছু নিয়ম ও সীমাবদ্ধতা রয়েছে, যা নিচে আলোচনা করা হলো:

ইনপুট সীমা

  • JSON ইনপুট: ব্যবহারকারীকে টেক্সট এরিয়াতে JSON ডেটা পেস্ট করতে হয়। এই ইনপুটের সর্বোচ্চ সীমা হলো ৫০০,০০০ অক্ষর।
  • JSONPath এক্সপ্রেশন: টেক্সট ফিল্ডে JSONPath এক্সপ্রেশনটি টাইপ বা পেস্ট করতে হয়। এই এক্সপ্রেশনের সর্বোচ্চ দৈর্ঘ্য ৪,০০০ অক্ষর হতে পারে।

আউটপুট এবং ত্রুটি বার্তা

টুলটি প্রক্রিয়াকরণ শেষে বিভিন্ন ধরনের আউটপুট এবং ত্রুটি বার্তা প্রদর্শন করে:

  • মিলে যাওয়া মানসমূহ: JSONPath এক্সপ্রেশনের সাথে মিলে যাওয়া মানগুলোর একটি তালিকা এখানে প্রদর্শিত হয়।
  • মিলসমূহ: {count}: এটি কুয়েরির মাধ্যমে খুঁজে পাওয়া মোট ম্যাচের সংখ্যা নির্দেশ করে।
  • প্রথম {max}টি দেখানো হচ্ছে: যদি ম্যাচের সংখ্যা অনেক বেশি হয়, তবে এটি নির্দেশ করে যে কেবল একটি সীমিত সংখ্যক ফলাফলই স্ক্রিনে প্রদর্শিত হচ্ছে।
  • বিস্তারিত: প্রতিটি ম্যাচের বিস্তারিত ভিউ দেখার জন্য এটি একটি শিরোনাম হিসেবে কাজ করে।
  • এই JSON-টি বৈধ নয়: যদি ইনপুট করা JSON ডেটা ত্রুটিপূর্ণ বা ভুল ফরম্যাটের হয়, তবে এই ত্রুটি বার্তাটি প্রদর্শিত হয়।
  • এই JSONPath এক্সপ্রেশনটি বৈধ নয়: ইনপুট করা JSONPath এক্সপ্রেশনটি ভুল বা ত্রুটিপূর্ণ হলে এই বার্তাটি দেখানো হয়।
  • এই JSONPath-টি মূল্যায়ন করা যায়নি: যদি কোনো কারণে JSONPath এক্সপ্রেশনটি মূল্যায়ন বা রান করা সম্ভব না হয়, তবে টুলটি এই ত্রুটি প্রদর্শন করে।
  • এই JSONPath-টি রান হতে অতিরিক্ত সময় নিয়েছে। এক্সপ্রেশনটি ছোট করুন অথবা আরও ছোট নমুনা ব্যবহার করুন: যদি এক্সপ্রেশনটি মূল্যায়ন করতে নির্ধারিত সময়ের চেয়ে বেশি সময় লাগে, তবে এই সতর্কবার্তাটি আসে।
  • এই JSON-টি এখানে পরীক্ষা করার জন্য অতিরিক্ত বড়। আরও ছোট নমুনা চেষ্টা করুন: ইনপুট করা JSON ডেটা যদি ৫০০,০০০ অক্ষরের সীমা অতিক্রম করে, তবে এই ত্রুটি বার্তাটি দেখানো হয়।
  • এই JSONPath এক্সপ্রেশনটি এখানে পরীক্ষা করার জন্য অতিরিক্ত দীর্ঘ: যদি JSONPath এক্সপ্রেশনটি ৪,০০০ অক্ষরের সীমা পার হয়ে যায়, তবে এই বার্তাটি প্রদর্শিত হয়।
  • কোনো মিল পাওয়া যায়নি: যদি এক্সপ্রেশনের সাথে মিল থাকা কোনো মান JSON ডেটাতে খুঁজে পাওয়া না যায়, তবে এই বার্তাটি আসে।
  • মুছে ফেলা হয়েছে: ইনপুট ও আউটপুট ফিল্ডগুলো খালি বা ক্লিয়ার করার পর এই নিশ্চিতকরণ বার্তাটি প্রদর্শিত হয়।

নিয়মাবলী ও বিশেষ ক্ষেত্রসমূহ

JSONPath টেস্টার ব্যবহারের সময় কিছু নির্দিষ্ট নিয়ম ও বিশেষ পরিস্থিতি তৈরি হতে পারে:

  • সময়সীমা: কোনো জটিল কুয়েরি রান হতে যদি অতিরিক্ত সময় লাগে, তবে টুলটি একটি সংক্ষিপ্ত সময়সীমা পার হওয়ার পর স্বয়ংক্রিয়ভাবে এক্সপ্রেশনের মূল্যায়ন বন্ধ করে দেয়।
  • ফলাফলের সর্বোচ্চ সীমা: টুলটি সর্বোচ্চ ২০০টি ফলাফল প্রদর্শন করতে পারে। যদি ২০০টির বেশি মিল পাওয়া যায়, তবে এটি "মিলসমূহ: 200+" এবং "প্রথম {max}টি দেখানো হচ্ছে" বার্তাটি প্রদর্শন করে।
  • পাথ ট্র্যাকিং: প্রতিটি ফলাফলের সাথে সোর্স JSON-এর মূল অবস্থান বা পাথটি যুক্ত থাকে, যা থেকে জানা যায় মানটি ঠিক কোথা থেকে এসেছে।

সমর্থিত JSONPath প্যাটার্নসমূহ

এই টুলটি সাধারণ এবং বহুল ব্যবহৃত বিভিন্ন JSONPath প্যাটার্ন সমর্থন করে, যার মধ্যে রয়েছে:

  • রিকার্সিভ ডিসেন্ট (Recursive Descent): যেমন $..price ব্যবহার করে গভীরভাবে নেস্টেড থাকা উপাদানগুলো খুঁজে বের করা।
  • ফিল্টার (Filters): যেমন [?@.price < 10] ব্যবহার করে নির্দিষ্ট শর্তের ভিত্তিতে ডেটা ফিল্টার করা।
  • অ্যারে স্লাইস (Array Slices): অ্যারের নির্দিষ্ট অংশ বা উপাদান নির্বাচন করা।

ব্যবহারকারীর গোপনীয়তা রক্ষা

আপনার ডেটার নিরাপত্তা ও গোপনীয়তা নিশ্চিত করতে এই টুলটি সম্পূর্ণ ব্রাউজার-ভিত্তিক কাজ করে। আপনার ইনপুট করা JSON ডেটা এবং JSONPath এক্সপ্রেশন আপনার নিজস্ব ব্রাউজারেই পরীক্ষা করা হয়। BroBroGo-এর সার্ভারে কোনো তথ্য বা ডেটা আপলোড করা হয় না।

এই টুলটি কাদের জন্য প্রয়োজনীয়

এই টুলটি বিভিন্ন পেশাদার ও সাধারণ ব্যবহারকারীদের কাজের সুবিধার্থে ডিজাইন করা হয়েছে, যেমন:

  • এপিআই ডেভেলপার (API Developers)
  • টেস্টার (Testers)
  • ডেটা ইঞ্জিনিয়ার (Data Engineers)
  • সাপোর্ট কর্মী (Support Personnel)
  • অন্য যেকোনো ব্যক্তি: যারা JSON ডেটা থেকে কোনো নির্দিষ্ট JSONPath এক্সপ্রেশন কী মান বের করবে তা বুঝতে চান, অথবা মূল অবস্থান না হারিয়ে JSON থেকে কোনো নির্দিষ্ট মান কপি করতে চান।

সাধারণ জিজ্ঞাসা (FAQ)

প্রশ্ন: আমি কোন ধরনের JSONPath সিনট্যাক্স ব্যবহার করতে পারি?
উত্তর: আপনি সাধারণ JSONPath প্যাটার্ন যেমন $.store.book[*].title, রিকার্সিভ ডিসেন্ট $..price, ফিল্টার [?@.price < 10] এবং অ্যারে স্লাইস ব্যবহার করতে পারেন।

প্রশ্ন: কেন প্রতিটি ফলাফলের সাথে একটি পাথ দেখানো হয়?
উত্তর: পাথটি দেখায় যে সোর্স JSON-এর ঠিক কোথা থেকে মানটি এসেছে, যাতে আপনি এর অবস্থান না হারিয়েই ম্যাচটি কপি করতে পারেন।

প্রশ্ন: কেন একটি কুয়েরি টাইম আউট হতে পারে?
উত্তর: খুব বিস্তৃত রিকার্সিভ কুয়েরি বা বিশাল নমুনা প্রসেস হতে অনেক সময় লাগতে পারে। টেস্টার একটি নির্দিষ্ট সময় পর এগুলো বন্ধ করে দেয় যাতে আপনি এক্সপ্রেশনটি ছোট করতে পারেন বা ছোট নমুনা ব্যবহার করতে পারেন।