JSON 요청에 대한 HTTP 415 지원되지 않는 미디어 유형 오류 해결
JSON 본문으로 REST 요청을 발행할 때 흔히 발생하는 문제 HTTP 415 "지원되지 않는 미디어 유형" 오류. 이 오류는 일반적으로 들어오는 JSON 데이터를 처리할 수 없을 때 서버에서 발생합니다.
구체적으로, 질문에서 제기된 문제는 적절하게 정의된 "Content-Type: application/json"이 포함된 POST 요청이 특징입니다. " 헤더가 있지만 여전히 "지원되지 않는 미디어 유형" 오류가 표시됩니다. 다양한 JSON 라이브러리를 사용해봐도 문제가 지속되었습니다.
해결 방법: 문자 집합 사양 생략
자세히 조사한 결과 "charset=utf8"이 포함된 것을 발견했습니다. "Content-Type" 헤더의 매개변수가 오류의 원인이었습니다. 요청 헤더에서 "charset=utf8"을 제거하면 오류가 기적적으로 사라집니다.
수정된 코드:
<code class="java">con.setRequestProperty("Content-Type", "application/json"); con.setRequestProperty("Accept", "application/json");</code>
기술 설명:
"charset=utf8" 매개변수를 생략하면 서버가 수신 JSON 데이터의 인코딩을 자동으로 감지할 수 있는 것으로 보입니다. 인코딩은 애플리케이션 계층에 투명하고 기본 통신 메커니즘에 의해 처리되어야 하기 때문에 이는 종종 선호되는 접근 방식입니다.
결론:
특정 시나리오에서는 "Content-Type" 헤더에서 문자 세트 사양을 제거하여 JSON 요청에 대한 HTTP 415 "지원되지 않는 미디어 유형" 오류를 해결할 수 있습니다. 이 간단한 수정을 통해 서버는 수신되는 JSON 데이터를 원활하게 처리할 수 있어 성공적인 REST 서비스 상호 작용이 가능해집니다.
위 내용은 내 JSON 요청에 대해 415 \'지원되지 않는 미디어 유형\' 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!