Oh MyUtils

JSONPath 테스터 - JSONPath 표현식 온라인 평가

JSON 데이터에 대해 JSONPath 표현식을 실시간으로 테스트하고 평가합니다. 필터, 재귀 탐색, 배열 슬라이싱 등 지원 — 100% 클라이언트 사이드, 서버 전송 없음.

자주 묻는 질문

JSONPath란 무엇인가요?

JSONPath는 XML의 XPath와 유사한 JSON 데이터용 쿼리 언어입니다. 2024년 2월 IETF에 의해 RFC 9535로 표준화되었습니다. JSONPath를 사용하면 $.store.book[0].title과 같은 경로 표현식을 사용하여 JSON 문서에서 특정 값을 선택하고 추출할 수 있습니다.

JSONPath 테스터를 어떻게 사용하나요?

JSON 입력 영역에 JSON 데이터를 붙여넣거나 Sample 버튼을 클릭하여 예시 데이터를 로드한 후, 표현식 필드에 JSONPath 표현식을 입력하세요. 입력하는 동안 실시간으로 결과가 자동으로 표시됩니다. 결과를 복사하거나 예시 패널에서 다른 표현식을 시도할 수 있습니다.

내 데이터는 안전한가요?

네, 모든 처리는 100% 브라우저에서 이루어집니다. JSON 데이터와 JSONPath 표현식은 어떤 서버로도 전송되지 않습니다. 프로덕션 API 응답, 비밀이 포함된 설정 파일 또는 민감한 데이터에도 안전하게 사용할 수 있습니다.

어떤 JSONPath 구문을 지원하나요?

이 도구는 표준 JSONPath 연산자를 지원합니다: 루트($), 자식(. 또는 []), 재귀 탐색(..), 와일드카드(*), 배열 인덱스([n]), 배열 슬라이스([start:end:step]), 필터 표현식([?()]). RFC 9535 표준을 확장한 JSONPath-Plus 라이브러리를 사용합니다.

지원하는 최대 JSON 크기는 얼마인가요?

이 도구는 최대 5MB 크기의 JSON 데이터를 지원합니다. 실시간 평가의 최적 성능을 위해 1MB 미만의 JSON을 권장합니다. 더 큰 데이터셋은 평가 중 약간의 지연이 있을 수 있습니다.

JSONPath와 JMESPath의 차이점은 무엇인가요?

JSONPath(RFC 9535)와 JMESPath는 모두 JSON 쿼리 언어이지만 구문과 기능이 다릅니다. JSONPath는 $를 루트로, .를 탐색에 사용하고(예: $.store.book[*].author), JMESPath는 다른 구문을 사용합니다(예: store.book[*].author). JSONPath가 더 널리 알려져 있고, JMESPath는 AWS CLI에서 많이 사용됩니다.

코드 예제

// Using jsonpath-plus in Node.js
const { JSONPath } = require('jsonpath-plus');

const data = {
  store: {
    book: [
      { category: "fiction", author: "Tolkien", title: "The Lord of the Rings", price: 22.99 },
      { category: "reference", author: "Nigel Rees", title: "Sayings of the Century", price: 8.95 }
    ]
  }
};

// Basic query
const authors = JSONPath({ path: '$.store.book[*].author', json: data });
console.log(authors); // ["Tolkien", "Nigel Rees"]

// Filter expression
const cheapBooks = JSONPath({ path: '$.store.book[?(@.price < 10)]', json: data });
console.log(cheapBooks); // [{ category: "reference", ... }]

// Recursive descent
const allPrices = JSONPath({ path: '$..price', json: data });
console.log(allPrices); // [22.99, 8.95]

관련 도구