Development/Javascript

AJAX 데이터 전송시 한글 오류

Dev. Jkun 2013. 5. 30. 08:48
반응형

** 테스트 환경 **

 - OS : Windows Server 2003 (IIS 6.0)

 - ServerSide : ASP

 - DataBase : MS-SQL 2000 Server

 - Browser : IE 6, IE 8, FireFox

 - Date : 2009/08/20 03:40

 

기존에 euc-kr 형식으로 페이지를 개발하다가 이번에 파일및 페이지형식도 UTF-8 형식으로 개발하였다.

그런데 AJAX 데이터 전송방식을 공통함수로 만들어 놓고 전송하니 기존에 잘 되던 함수에서 한글은 받지를

못하는 것이다. 이걸로 장장.. 쪽팔려서 삽질한 시간은 쓰기도 싫다.ㅋㅋ

 

하지만 명확한 이유는 알았다.

이미 알고 있는 사람도 많겠지만.;;

 

어쨌든 잊어버리지 않기 위해서 작성한다.

 

GET 방식으로 데이터를 전송하기 위해서는 데이터가 반드시 UTF-8 형식으로 인코딩되어 보내져야 한다.

예 ) encodeURIComponent(aId.value) // aId.value 는 전송할 파라메터 이다.

 

그리고 데이터를 받아서 처리하는 페이지 상단에 <%@Language = "VBScript" CodePage = "65001" %>

작성해준다. 이어서 파일형식과 문자셋이 UTF8이 아닌경우는 UTF8 엔코딩 함수를 이용하여 변환하여 처리한다.

그러나 파일형식과 문자셋이 UTF8인 경우는 그냥 출력해주어야 한다. 아니면 간혹 정상으로 나올수도 있으나 (믿을수 없는 웹!!!!!)

공백이나 처음 문자열을 + 로 표시해버리기도 한다. 그럴때는 그냥 Response.Write 처리~

 

아.. 피곤해.. 벌써 새벽 3시를 달리는구나..

그래도 만들어지는 웹사이트가 퀄리티가 좋아지니 기분은 좋다... 아.. 근데.. 삽질은 싫고 억울해.ㅋㅋ

반응형