JSON Patch 적용기
RFC 6902 JSON Patch 문서(add·remove·replace·move·copy·test)를 원본 JSON에 순서대로 적용해 결과를 보여줍니다. 중간 연산이 실패하면 몇 번째 연산에서 왜 실패했는지 알려줍니다.
원본 JSON
JSON Patch 배열
적용 완료
연산 2개
아래가 결과 문서입니다
결과 JSON
{
"name": "도구스",
"tools": 1680,
"categories": [
"money",
"date",
"unit"
]
}사용 방법
- 1원본 JSON 문서를 붙여넣습니다.
- 2JSON Patch 배열(op·path·value 등)을 붙여넣습니다.
- 3연산이 순서대로 적용된 결과 문서가 나옵니다.
- 4중간에 실패하면 몇 번째 연산에서 왜 실패했는지 표시됩니다.
자주 묻는 질문
RFC 6902가 정의한, JSON 문서를 부분적으로 수정하는 표준 형식입니다. {"op": "add", "path": "/a/b", "value": 1} 처럼 연산을 배열로 나열하면 순서대로 적용됩니다. HTTP PATCH 요청에서 전체 문서를 다시 보내지 않고 바뀐 부분만 보낼 때 씁니다.
RFC 6902가 정의한 6가지 전부입니다 — add(추가), remove(삭제), replace(교체), move(이동), copy(복사), test(검사, 값이 다르면 패치 전체를 실패시킵니다). path·from 은 RFC 6901 JSON Pointer 표기("/a/b/0")를 쓰고, 배열 맨 끝은 "/a/-"로 가리킵니다.
패치 전체가 실패합니다. RFC 6902 3절은 이 세 연산의 대상이 반드시 이미 존재해야 한다고 정합니다. 반대로 add는 없던 자리에 새로 만드는 연산이라 부모 컨테이너만 있으면 되고, 같은 이름이 이미 있으면 덮어씁니다.
아니요. 몇 번째 연산에서 실패했는지는 알려주지만, 결과 문서는 아예 나오지 않습니다. 패치는 전부 적용되거나 전부 취소되는 단위로 다뤄야 중간 상태가 남지 않습니다.
알아두면 좋은 점
- 별도의 법령·요율 검증이 필요 없는 순수 스펙 구현입니다. RFC 6902 부록 A의 공식 예제로 동작을 검증했습니다.
- 숫자 비교는 JSON 값 기준입니다(1과 1.0은 파싱되면 같은 숫자라 test에서 같다고 봅니다).
함께 보면 좋은 도구
마지막 검증: 2026년 9월 10일 · 결과는 참고용 추정치입니다.