UTF-8 ↔ euc-kr 변환 escape / encodeURI / encodeURIComponent > 기술자료 | 해피정닷컴

UTF-8 ↔ euc-kr 변환 escape / encodeURI / encodeURIComponent > 기술자료

본문 바로가기

사이트 내 전체검색

UTF-8 ↔ euc-kr 변환 escape / encodeURI / encodeURIComponent > 기술자료

ClassicASP UTF-8 ↔ euc-kr 변환 escape / encodeURI / encodeURIComponent

페이지 정보


본문

utf-8 웹페이지에 KCP 전자결제 시스템 구축중 한글을 전송하는 과정에서 문제가 발생합니다.
KCP ( 올더게이트 등 )은 euc-kr 데이타로 결제과정이 진행되기 때문입니다.
이때 한글을 escape 함수를 이용해서 암호화 형태로 변형해서 KCP에 전송후 리턴된 한글을 다시 unescape 함수를 이용해서 원래 한글로 되돌려 Database에 저장합니다.


용어설명
  인코딩 : 정보를 부호화/암호화
  디코딩 : 그 부호화/암호화를 해제


<% @LANGUAGE='VBSCRIPT' CODEPAGE='65001' %>
<%
response.CharSet = "utf-8"
response.write "인코딩 = "& escape("해피정닷컴") &"<br />"
response.write "디코딩 = "& unescape("%uD574%uD53C%uC815%uB2F7%uCEF4") &"<br />"
%>


결과
인코딩 = %uD574%uD53C%uC815%uB2F7%uCEF4
디코딩 = 해피정닷컴


url을 client에서 server로 넘길 때 escape sequence로 넘겨야 client에서 넘긴 url을 제대로 받을 수 있기 때문에 사용합니다.
그러면, 비슷 비슷한 이 세 함수들의 차이점을 알아봅니다.
 
1. escape() :
"+" 문자를 server쪽에서 공백(space)으로 처리하고, 실제 공백(space)문자도 공백으로 처리하기 때문에, 이 escape()함수는 non-ASCII 문자들을 정확하게 처리하지 못합니다.
따라서 이런 escape()의 문제점을 피하기 위한 최선의 선택은 거의 모든 non-ASCII 문자들 까지 encode 해주는 "encodeURIComponent()"를 사용하는 것입니다.

1-1. escape()가 encode 하지 못하는 문자들 : @*/+


2. encodeURI() :
이 함수는 "'"(외 따옴표) 문자를 encode 하지 않습니다. URI에서 valid한 문자로 사용되기 때문입니다.

2-1. encodeURI()가 encode 하지 못하는 문자들 : ~!@#$&*()=:/,;?+'

 
3. encodeURIComponent() :
최근에, encodeURIComponent()함수는 대부분의 경우에 URI를 인코딩 할 때 사용 됩니다.
이 함수는 대부분의 문자들을 인코딩 합니다.
이 함수는 "'"(외 따옴표)문자를 encode 하지 않습니다. URI에서 valid한 문자로 사용되기 때문입니다.
 
3-1. encodeURIComponent() 가 encode 하지 못하는 문자들 : ~!*()'



관련자료
http://taeyo.pe.kr/Forum/Content.aspx?SEQ=151401&TBL=ASP
http://blog.naver.com/kolove79/20044205975
http://xkr.us/articles/javascript/encode-compare/

댓글목록

등록된 댓글이 없습니다.


Total 2,641건 76 페이지
  • RSS
기술자료 목록
1141
HTML   24386  2012-05-02 20:26 ~ 2018-02-23 22:53  
1140
그누보드   18392  2012-05-01 22:12  
1139
메이크샵   26618  2012-05-01 10:58  
1138
HTML   15954  2012-04-29 17:33 ~ 2019-06-18 10:16  
1137
HTML   24762  2012-04-28 23:27 ~ 2018-06-20 23:57  
1136
ClassicASP   20096  2012-04-27 02:31  
1135
JavaScript   15278  2012-04-26 12:06 ~ 2012-05-26 00:00  
1134
전자결제   31458  2012-04-26 00:36  
열람
ClassicASP   53572  2012-04-24 17:51 ~ 2013-05-12 00:00  
1132
JavaScript   40582  2012-04-24 00:22  
1131
메이크샵   14941  2012-04-23 17:44 ~ 2013-08-16 00:00  
1130
메이크샵   11787  2012-04-23 17:44  
1129
그누보드   10895  2012-04-23 11:44  
1128
일반   13805  2012-04-22 18:38  
1127
Adobe   12125  2012-04-22 15:43  
1126
메이크샵   10813  2012-04-20 23:32  
1125
JavaScript   36158  2012-04-19 23:06 ~ 2012-06-22 00:00  
1124
ClassicASP   15183  2012-04-19 02:17  
1123
etc언어   23802  2012-04-18 18:32 ~ 2016-11-07 00:00  
1122
ClassicASP   15250  2012-04-18 13:41 ~ 2016-03-30 00:00  

검색

해피정닷컴 정보

회사소개 회사연혁 협력사 오시는길 서비스 이용약관 개인정보 처리방침

회사명: 해피정닷컴   대표: 정창용   전화: 070-7600-3500   팩스: 042-670-8272
주소: (34368) 대전시 대덕구 대화로 160 대전산업용재유통단지 1동 222호
개인정보보호책임자: 정창용   사업자번호: 119-05-36414
통신판매업신고: 제2024-대전대덕-0405호 [사업자등록확인]  
Copyright 2001~2024 해피정닷컴. All Rights Reserved.