JSONPath டெஸ்டர்

JSON-க்கு எதிராக JSONPath எக்ஸ்பிரஷன்களைச் சோதித்து, நீங்கள் தட்டச்சு செய்யும் போதே பொருந்தும் மதிப்புகள் மற்றும் பாத்-களைக் காணுங்கள்.

JSON உள்ளீடு
பொருந்தும் மதிப்புகள்
சோதிக்க JSON மற்றும் ஒரு JSONPath எக்ஸ்பிரஷனை உள்ளிடவும்.

உங்கள் JSON மற்றும் JSONPath உங்கள் உலாவியிலேயே சோதிக்கப்படுகின்றன. BroBroGo-விற்கு எதுவும் பதிவேற்றப்படுவதில்லை.

அடிக்கடி கேட்கப்படும் கேள்விகள்

நான் என்ன JSONPath தொடரியலைப் பயன்படுத்தலாம்?

$.store.book[*].title போன்ற பொதுவான JSONPath வடிவங்கள், $..price உடனான ரிகர்சிவ் இறங்குதல், [?@.price < 10] போன்ற வடிகட்டிகள் மற்றும் வரிசை துண்டுகளைப் (array slices) பயன்படுத்தவும்.

ஒவ்வொரு முடிவும் ஏன் ஒரு பாத் (path)-ஐக் காட்டுகிறது?

மூல JSON-ல் மதிப்பு எங்கிருந்து வந்தது என்பதை பாத் (path) காட்டுகிறது, எனவே நீங்கள் அதன் இருப்பிடத்தை இழக்காமல் பொருத்தத்தை நகலெடுக்கலாம்.

ஒரு வினவல் ஏன் காலாவதியாகலாம் (timeout)?

மிகவும் பரந்த ரிகர்சிவ் வினவல்கள் அல்லது பெரிய மாதிரிகள் அதிக நேரம் எடுக்கலாம். சோதனையாளர் அவற்றை ஒரு குறுகிய வரம்பிற்குப் பிறகு நிறுத்துகிறார், இதனால் நீங்கள் எக்ஸ்பிரஷனைச் சுருக்கலாம் அல்லது சிறிய மாதிரியைப் பயன்படுத்தலாம்.

JSONPath தொடரியல் மற்றும் பொதுவான வடிவங்கள்

JSONPath என்பது JSON தரவுக் கட்டமைப்பிலிருந்து குறிப்பிட்ட தகவல்களைத் தேர்ந்தெடுப்பதற்கும் பிரித்தெடுப்பதற்கும் பயன்படும் ஒரு சக்திவாய்ந்த வினவல் மொழியாகும். எக்ஸ்பிரஷன்கள் எப்போதும் மூலப் பொருளைக் குறிக்கும் $ குறியீட்டுடன் தொடங்குகின்றன. இந்த டெஸ்டர் கருவி பல்வேறு பொதுவான JSONPath வடிவங்களை ஆதரிக்கிறது:

  • நேரடிப் பாதை (Direct Path): $.store.book[*].title போன்ற எக்ஸ்பிரஷன்கள் படிநிலை அமைப்பில் உள்ள குறிப்பிட்ட உறுப்புகளை நேரடியாகக் குறிக்கின்றன.
  • ரிகர்சிவ் இறங்குதல் (Recursive Descent): $..price போன்ற வடிவங்கள், JSON கட்டமைப்பில் எந்த ஆழத்தில் இருந்தாலும் price என்ற பெயரைக் கொண்ட அனைத்து விசைகளையும் தேடிக் கண்டறியப் பயன்படுகின்றன.
  • வடிகட்டிகள் (Filters): [?@.price < 10] போன்ற வடிகட்டி எக்ஸ்பிரஷன்கள், குறிப்பிட்ட நிபந்தனைகளைப் பூர்த்தி செய்யும் தரவுகளை மட்டும் பிரித்தெடுக்க உதவுகின்றன.
  • வரிசை துண்டுகள் (Array Slices): வரிசைகளில் உள்ள குறிப்பிட்ட வரம்பிற்குட்பட்ட உறுப்புகளைத் தேர்ந்தெடுக்க இவை பயன்படுகின்றன.

JSON கட்டமைப்பிலிருந்து தரவைத் தேர்ந்தெடுக்கும் முறை

JSONPath எக்ஸ்பிரஷன்கள் ஒரு JSON கோப்பில் உள்ள சிக்கலான கட்டமைப்புகளை பகுப்பாய்வு செய்து, நமக்குத் தேவையான துல்லியமான தரவுப் புள்ளிகளைத் தேர்ந்தெடுக்கின்றன. உள்ளமைக்கப்பட்ட (nested) JSON பொருள்களிலிருந்து குறிப்பிட்ட மதிப்புகளைப் பிரித்தெடுக்கும் போது, ஒவ்வொரு உறுப்பின் பாதையையும் துல்லியமாகக் குறிப்பிடுவது அவசியமாகும்.

இந்தச் செயல்பாட்டில், மூல JSON-ல் மதிப்பு எங்கிருந்து வந்தது என்பதை பாத் (path) காட்டுகிறது. இதன் மூலம், பயனர் அதன் அசல் இருப்பிடத்தை இழக்காமல் பொருத்தமான மதிப்பை நகலெடுக்க முடியும். API உருவாக்கத்தில் ஈடுபடும் டெவலப்பர்கள், சோதனையாளர்கள், தரவுப் பொறியாளர்கள் மற்றும் ஆதரவுப் பணியாளர்கள் போன்றோருக்கு, ஒரு குறிப்பிட்ட JSONPath எக்ஸ்பிரஷன் என்ன மாதிரியான தரவை வெளியீடாகத் தரும் என்பதை முன்கூட்டியே புரிந்துகொள்ள இந்தச் செயல்முறை உதவுகிறது.

உள்ளீட்டு வரம்புகள் மற்றும் சரிபார்ப்பு விதிகள்

JSONPath சோதனைகளைச் சீராக நடத்துவதற்கு, உள்ளீடுகளுக்கான சில குறிப்பிட்ட வரம்புகளும் சரிபார்ப்பு விதிகளும் வகுக்கப்பட்டுள்ளன. இந்த விதிகளைப் பின்பற்றுவது துல்லியமான முடிவுகளைப் பெற உதவும்:

உள்ளீட்டு வகை அதிகபட்ச வரம்பு பிழை செய்தி
JSON உள்ளீடு 500,000 எழுத்துக்கள் இந்த JSON இங்கே சோதிக்க முடியாத அளவுக்குப் பெரியது. சிறிய மாதிரியை முயற்சிக்கவும்.
JSONPath எக்ஸ்பிரஷன் 4,000 எழுத்துக்கள் இந்த JSONPath எக்ஸ்பிரஷன் இங்கே சோதிக்க முடியாத அளவுக்கு நீளமானது.

உள்ளீடுகள் இந்த வரம்புகளை மீறும் போது அல்லது தவறாக உள்ளிடப்படும் போது பின்வரும் பிழைகள் காட்டப்படும்:

  • வழங்கப்பட்ட JSON தரவு தவறான வடிவமைப்பில் இருந்தால், "இந்த JSON செல்லுபடியற்றது." என்ற செய்தி தோன்றும்.
  • வழங்கப்பட்ட எக்ஸ்பிரஷன் தவறான தொடரியலைக் கொண்டிருந்தால், "இந்த JSONPath எக்ஸ்பிரஷன் செல்லுபடியற்றது." என்ற செய்தி காட்டப்படும்.
  • எக்ஸ்பிரஷனை மதிப்பிட முடியாத சூழலில், "இந்த JSONPath-ஐ மதிப்பிட முடியவில்லை." என்ற பிழை செய்தி வெளியாகும்.
  • பயனர் உள்ளீடுகளை அழிக்கும் போது "அழிக்கப்பட்டது." என்ற செய்தி காட்டப்படும்.

பெரிய தரவுத்தொகுப்புகள் மற்றும் சிக்கலான வினவல்களைக் கையாளுதல்

மிகப் பெரிய JSON தரவுத்தொகுப்புகளையோ அல்லது மிகவும் சிக்கலான JSONPath வினவல்களையோ கையாளும் போது, கணினியின் செயல்திறனைப் பாதுகாக்க சில கட்டுப்பாடுகள் விதிக்கப்பட்டுள்ளன.

மிகவும் பரந்த ரிகர்சிவ் வினவல்கள் அல்லது பெரிய மாதிரிகள் அதிக நேரம் எடுக்கலாம். சோதனையாளர் அவற்றை ஒரு குறுகிய கால வரம்பிற்குப் பிறகு நிறுத்துகிறார். வினவல் காலாவதியாகும் போது, "இந்த JSONPath இயங்குவதற்கு அதிக நேரம் எடுத்துக்கொண்டது. எக்ஸ்பிரஷனைச் சுருக்கவும் அல்லது சிறிய மாதிரியைப் பயன்படுத்தவும்." என்ற பிழை செய்தி காட்டப்படும். எனவே, வினவல்களை எழுதும்போது எக்ஸ்பிரஷனைச் சுருக்குவது அல்லது சிறிய அளவிலான மாதிரித் தரவைப் பயன்படுத்துவது சிறந்த நடைமுறையாகும்.

மேலும், இந்த டெஸ்டர் அதிகபட்சமாக 200 முடிவுகளை மட்டுமே காண்பிக்கும். அதற்கு மேற்பட்ட முடிவுகள் இருக்கும் பட்சத்தில், இது "பொருத்தங்கள்: 200+" மற்றும் "முதல் {max}-ஐக் காட்டுகிறது." என்ற குறிப்புடன் முடிவுகளைக் கட்டுப்படுத்தும்.

தரவு தனியுரிமை மற்றும் செயலாக்கம்

இந்தக் கருவியைப் பயன்படுத்தும் போது தரவுப் பாதுகாப்பு முழுமையாகப் பேணப்படுகிறது. உங்கள் JSON மற்றும் JSONPath உங்கள் உலாவியிலேயே சோதிக்கப்படுகின்றன. BroBroGo-விற்கு எதுவும் பதிவேற்றப்படுவதில்லை. இதனால் உங்கள் தரவு உங்கள் சாதனத்தை விட்டு வெளியேறாமல் பாதுகாப்பாகச் செயலாக்கப்படுகிறது.

அடிக்கடி கேட்கப்படும் கேள்விகள் (FAQ)

கேள்வி: நான் என்ன JSONPath தொடரியலைப் பயன்படுத்தலாம்?
பதில்: $.store.book[*].title போன்ற பொதுவான JSONPath வடிவங்கள், $..price உடனான ரிகர்சிவ் இறங்குதல், [?@.price < 10] போன்ற வடிகட்டிகள் மற்றும் வரிசை துண்டுகளைப் (array slices) பயன்படுத்தலாம்.

கேள்வி: ஒவ்வொரு முடிவும் ஏன் ஒரு பாத் (path)-ஐக் காட்டுகிறது?
பதில்: மூல JSON-ல் மதிப்பு எங்கிருந்து வந்தது என்பதை பாத் (path) காட்டுகிறது, எனவே நீங்கள் அதன் இருப்பிடத்தை இழக்காமல் பொருத்தத்தை நகலெடுக்கலாம்.

கேள்வி: ஒரு வினவல் ஏன் காலாவதியாகலாம் (timeout)?
பதில்: மிகவும் பரந்த ரிகர்சிவ் வினவல்கள் அல்லது பெரிய மாதிரிகள் அதிக நேரம் எடுக்கலாம். சோதனையாளர் அவற்றை ஒரு குறுகிய வரம்பிற்குப் பிறகு நிறுத்துகிறார், இதனால் நீங்கள் எக்ஸ்பிரஷனைச் சுருக்கலாம் அல்லது சிறிய மாதிரியைப் பயன்படுத்தலாம்.

கேள்வி: இந்தத் தளத்தில் நான் எவ்வளவு பெரிய JSON கோப்பைச் சோதிக்க முடியும்?
பதில்: நீங்கள் அதிகபட்சமாக 500,000 எழுத்துக்கள் வரையிலான JSON தரவை உள்ளிட்டு சோதிக்கலாம். அதற்கு மேற்பட்ட அளவிலான கோப்புகளுக்கு, சிறிய மாதிரித் தரவைப் பயன்படுத்த வேண்டும்.