현상
- 데이터를 전송하는 페이지 : PHP
- 데이터를 수신하는 페이지 : JSP
위 페이지끼리 XML 데이터를 POST 형식으로 주고 받는데, 특정 데이터 전송 시 JSP 페이지에서 아래 오류가 발생하였다.
Error Message
java.lang.IllegalArgumentException: URLDecoder: Illegal hex characters in escape (%) pattern
원인
전송 문자열에 % 기호가 포함된 경우,
URL Decode 과정에서 % 이후 문자열은 16진수로 인식하는데 변환이 되지 않으면 발생한다고 한다.
$goodsnm = "헬로 3겹데코 27m 30롤 (*100%천연펄프)"; // 예시
해결 방법
전송 전(URL Encode 전)에 % 기호를 %25로 변경
$goodsnm = str_replace('%', '%25', $goodsnm);
'코딩 > PHP' 카테고리의 다른 글
VScode Extension - PHP IntelliSense 설정 (1) | 2022.09.22 |
---|---|
PHP - sqlsrv 함수 사용 시 주의 사항 (0) | 2022.08.09 |
<IMG> 태그 추출 (게시글 썸네일 만들기) (0) | 2016.08.23 |
[PHP] 삼항 연산자 (0) | 2015.06.01 |
php.ini 경로 확인 및 설정 방법 (0) | 2014.09.19 |