GET혹은 POST방식으로 전달되는 URL 문자열을 인코딩하거나 디코딩 한다.
클라이언트에서 위의 방법을 이용해서 데이터를 전달할 경우에, 이외의 모든 단어는 %HEX방식으로 인코딩되어서 전달된다. 서버측에서는 이를 다시 디코딩해야 한다. CGI(12) 프로그래밍을 한다면 반드시 인코딩/디코딩과정을 거쳐야 한다.
인코딩 방식에 대한 내용은 CGI 프로그래밍을 참고하기 바란다.
사용방법
int urlencode(unsigned char *str, unsigned char *dest);
int urldecode(unsigned char *str, unsigned char *dest);
str을 인코딩하거나 디코딩해서 dest에 복사한다. 리턴값은 인코딩/디코딩 결과 데이터의 길이다.
사용예
int main()
{
int i, n;
unsigned char dest[256] = {0x00,};
unsigned char test[256] = {0x00,};
unsigned char *str = "hello world 안녕하세요\n";
unsigned char *str2 = "hello\%20world\%20\%be\%c8";
printf("Original : %d %s", strlen(str), str2);
n = urlencode(str, dest);
printf("decode : %d %s\n", n, dest);
n = urldecode(str2, test);
printf("encode : %d %s\n", n, test);
}
설명
사용방법
코드
다른 코드
2004/05/12
Recent Posts
Archive Posts
Tags