본문 바로가기
Javascript

서버로 보내기전 한글이 포함된 url을 인코딩하는 방법

by progrpsk 2017. 7. 28.

클라이언트 단에서 서버쪽으로 한글이 포함된 url 주소를 보낼때

서버에서 해당 url을 제대로 받지 못할때가 있다.


이러한 문제는 클라이언트와 서버와의 인코딩 형식이 다를때 발생하는데,

클라이언트에서는 uft-8 형식으로 url 주소를 보내는 반면, 서버에서는 url을 유니코드 형식으로 변환해서 받기 때문이다.


그렇기에 클라이언트에서 한글이 포함된 url을 서버에 보낼때

url의 인코딩 형식을 유니코드로 변환해줄 필요가 있다.


이러한 경우 encodeURIComponent() 라는 함수를 이용하면 된다.

본 함수로 url 부분에서 한글로 된 부분만 해당 함수로 감싸주면 문제는 해결된다.

(참고로 저 함수로 url 전체를 감싸면 안된다.

이유는 해당함수가 특수문자는 제외하고 변환하기 때문에 일부값들이 생략되어 전달될수도 있기 떄문이다.)


자세한 설명은 아래의 링크를 참고하면 된다.


http://baver.zetacode.com/entry/%EC%9E%90%EB%B0%94%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-escape-encodeURI-encodeURIComponent-%EC%B0%A8%EC%9D%B4


댓글