웹 jsp css 질문이요(크롬은 되고 익스플로어는 안돼는 이유??)
조회수 997회
웹 페이지를 만들었는데...
다른 페이지는 다되는데 게시판에서 검색해서 화면에 뛰우면
안나와요(이클립스랑 익스플로어에서요).
특수문자나 영어로만 검색하면 검색이 되는데 한글로만 하면 안됩니다.
근데 크롬에서는 전부 다나오네요...
왜 이럴까요?
전부 나오게 하는 방법이 있을까요?
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
중요한 점은 "단순 문제해결이 아니라 왜 안나오는지 원인을 아는 것" 입니다.
브라우져 우측에 HTTP 400 이라고 적혀 있듯이 HTTP 상태값으로 400 을 리턴했습니다.
코드 400 은 잘못된 요청을 보냈을시에 발생을 합니다.
그럼 무엇이 잘못된 것인지 알아야 합니다.
HTTP 에서 요청을 보내는 방법은 크게 GET/POST 방식이 있습니다.
그중에 질문자가 사용한 방법은 GET 방법입니다. URL에 QUERY 문자열을 함께 보냈습니다.
그런데 HTTP 스펙에 보면 URL 은 ASCII 값으로만 요청 보내게 되어 있습니다만 질문자는 word=서명 이라고 query 문자열에 한글을 보냈고 스펙에 어긋난 요청을 보낸 결과로 http response status code 400 을 받았습니다.
원인을 알았으니 이제 해결을 할 수 있습니다.
단순합니다 한글을 ascii 형태로 만들어서 질의하면 됩니다.
아래와 같이 하면 됩니다.
String url = "주소~"; String encodeURL = URLEncoder.encode(String url, "UTF-8");
번거롭다면
서명은 %EC%84%9C%EB%AA%85 입니다.
%EC%84%9C%EB%AA%85 값을 주소에서 '서명' 대신 넣고 호출하면 됩니다.
댓글 입력