주 콘텐츠로 건너뛰기
버전: 1.x

API04003: 잘못된 JSON 응답

이것이 의미하는 바

서버는 JSON으로 보이는 데이터를 반환했지만 손상되거나 유효하지 않습니다. POS는 JSON 구문이 깨져 있어서 응답을 분석할 수 없습니다.

일반적인 원인

  • PHP 경고/알림 — JSON 이전의 PHP 출력
  • BOM (바이트 순서 마크) — 파일 시작 시의 보이지 않는 문자
  • 인코딩 문제 — 문자 인코딩 문제
  • 잘린 응답 — 전송 중간에 응답이 잘림
  • 플러그인 출력 — 플러그인이 비 JSON 콘텐츠를 추가함

수정 방법

1. PHP 경고 확인

JSON 이전의 PHP 경고/알림은 분석을 방해합니다:

wp-config.php에서:

define('WP_DEBUG', true);
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);

wp-content/debug.log를 검토하고 모든 문제를 수정하세요.

2. BOM 문자 확인

일부 텍스트 편집기는 보이지 않는 BOM 문자를 추가합니다:

  • BOM 없이 PHP 파일 다시 저장
  • BOM 없는 UTF-8 인코딩 사용
  • 최근에 편집한 파일 확인

3. 전체 응답 검증

응답이 잘리고 있는 경우:

  • PHP 출력 버퍼링 설정 확인
  • php.ini에서 output_buffering 증가
  • 타임아웃 문제 확인

4. API 직접 테스트

브라우저에서나 curl을 사용하여:

curl -v https://yoursite.com/wp-json/wcpos/v1/

JSON 이전에 예기치 않은 콘텐츠가 있는지 확인하세요.

5. 문자 인코딩 확인

데이터베이스와 PHP가 UTF-8을 사용하고 있는지 확인하세요:

  • wp-config.php의 문자 집합 설정 확인
  • 데이터베이스 테이블이 UTF-8인지 확인
  • 문제를 일으키는 특수 문자 확인

관련 오류