서버측의 데이터 디코딩
- 클라이언트로부터 전달된 폼 양식을 서버에서 디코딩하는 과정이 필요
(1) GET 메소드에 의해 전달된 데이터 디코딩
- GET 메소드에 의해 얻어진 데이터들은 환경변수 QUERY_STRING에 저장
- name=value의 쌍의 데이터
- 인코딩된 문자들을 인코딩과는 반대로 "+"는 공백으로, "%5B"는 "["등으로 바꾸어 주어야 함
- QUERY_STRING에 저장된 문자열에 대해서 URL디코딩
- name=value의 분리 : "&"으로 구분 -> 문자열에서 `&'가 나타날 때까지 한 문자씩 복사한 후, `&'가 나타나면 그 때까지 복사한 문자열을 하나의 name=value쌍으로 저장
- 이러한 과정을 거친 후 최종적으로 name=value의 쌍 구하고 분리
- HTTP request 헤더에 Content-type이라는 헤더 필드는 필요하지 않음
- ASCll 캐릭터만 허용 / 바이너리 데이터 허용되지 않음
(2) POST 메소드에 의해 전달된 데이터 디코딩
- name=value쌍의 디코딩 과정은 GET 메소드와 동일
- 폼 문에서 입력된 문자열을 표준 입력으로 얻음
- 그래서 파일을 다루는 모듈이 필요하다.
- 사용자의 입력을 HTTP request 바디 부분에 넣어서 전송
그래서 HTTP 요청 헤더에 Content-type 필드를 명시해야 함 .
- 문자 한계 없음 > 바이너리 데이터 허용되기 때문에 입출력에 이용
'HTML & CSS & JAVASCRIPT' 카테고리의 다른 글
쿠키와 세션 (0) | 2019.06.20 |
---|---|
예제_회원가입 (0) | 2019.06.20 |
예제_push,pop (0) | 2019.06.20 |
예제_input type 활용 (0) | 2019.06.20 |
예제_계산기 (0) | 2019.06.20 |