유용한 오류 보고서에는 실제 고객 자료가 아니라 실패를 일으키는 구조가 필요합니다. 운영 자료를 공개 이슈에 붙여넣고 눈에 띄는 이름 몇 개만 가리지 마세요. 중첩 필드·ID·URL·자유 입력 문구로도 누군가를 식별할 수 있습니다.
구문 문제를 재현하는 새 가상 예제를 만드세요. 끝 쉼표 문제라면 {"demo":[1,2,]}로 충분합니다. 실제 기록 노출 없이 속성·배열·잘못된 쉼표를 담습니다. 실제 문제 구조가 다르다면 필요한 최소 중첩·이스케이프 구조만 유지하고 값은 모두 새로 만드세요. 이는 수동 예제 작성이며 두 도구 모두 자동 익명화 도구가 아닙니다.
최종 보고서는 짧아도 됩니다:
- 도구 URL과 방식.
- 실패하는 가상 입력.
- 정확하게 복사한 실제 오류.
- 제안한 가상 출력과 작은 차이.
- 수정 출력이 정렬·검증기에서 구문 검사되는지 여부.
- 사용 앱의 스키마처럼 아직 검사하지 않은 항목.
실제 자료 없이 재현할 수 없다면 게시 전에 멈추세요. 로컬 처리라고 이후 스크린샷이나 이슈 게시물도 비공개라고 가정하지 말고 승인된 비공개 제보 경로를 문의하세요. 검사 뒤 예제를 지우고 스크린샷에 다른 탭·계정 정보가 없는지도 확인하세요.
예제 한눈에 비교
| 단계 | 입력하거나 관찰할 내용 |
|---|---|
| 실패하는 입력 | {"demo":[1,2,]}] 앞의 마지막 쉼표가 잘못됐습니다. |
| 실행 결과 | 방식: 정렬 → 실행을 선택하세요. 검사한 버전은 “입력과 선택한 형식을 확인하세요.”를 표시합니다. 출력은 비어 있고 결과 복사를 사용할 수 없습니다. 오류 문구는 달라질 수 있습니다. |
| 수정한 입력 | {"demo":[1,2]}다시 실행하세요. 출력에는 demo와 배열 [1, 2]가 있어야 합니다. 들여쓰기는 달라도 값은 달라지면 안 됩니다. |
실제 정렬·검증기에서 예제 재현
- JSON 정렬·검증기를 열고 입력란에
{"demo":[1,2,]}를 붙여넣으세요. 방식에서 정렬을 선택한 뒤 실행을 누르세요. - 정렬된 결과 대신 오류가 표시되는지 확인하세요. 오류 문구는 브라우저·버전에 따라 다를 수 있으므로 실제 표시를 복사하세요. 이 예제에서는
]바로 앞의 쉼표가 잘못됐습니다. JSON에서는 이 위치의 쉼표를 허용하지 않습니다. - 입력 내용을
{"demo":[1,2]}로 바꾸고 다시 실행하세요. 출력에는demo속성과 숫자1,2가 들어 있는 배열이 있어야 합니다. 공백과 들여쓰기는 표시 형식일 뿐, 추가 데이터가 아닙니다. - 성공이라고 보고하기 전에 결과를 다시 구문 검사하거나 값을 비교하세요. 쉼표가 제거된 차이를 보여주려면 텍스트 비교에서 두 가상 문자열을 비교하세요. 문자열 비교만으로 JSON의 유효성을 판단할 수는 없습니다.
- 두 문자열, 선택한 방식, 실제 오류, 수정 결과를 오류 보고서에 포함하세요. 스키마 규칙과 사용 앱은 검사하지 않았다고 명시하세요. 작업이 끝나면 초기화를 눌러 도구의 내용을 비우세요.
결과가 다를 때
- 여전히 유효하지 않음: 큰따옴표·닫는 괄호·함께 복사된 문구를 확인하세요. 가상 오류를 하나씩 고치고 운영 필드를 임의로 지우지 마세요.
- JSON은 유효하지만 앱이 거부함: 구문 성공은 필수 필드·자료형·업무 규칙의 정확성을 보장하지 않습니다. 승인된 비공개 환경에서 해당 앱의 문서화된 스키마를 확인하세요.
- 중복 키 경고: 형식 정리로 경고를 숨기지 마세요. 프로그램마다 중복 속성을 다르게 해석할 수 있으므로 의도한 구조를 명확히 만드세요.
자주 묻는 질문
이것으로 운영 기록이 익명화되나요?
아닙니다. 예제를 처음부터 새로 만드세요. 형식 정리나 눈에 보이는 이름 교체만으로 식별자가 제거됐다고 보장할 수 없습니다.
유효한 결과인데 왜 앱은 고쳐지지 않나요?
정렬·검증기는 지원하는 JSON 구문을 검사하고 정리합니다. 앱의 스키마를 실행하거나 값을 코드로 실행하지 않습니다.