The Boxer
GET, POST 본문
[GET]
- 클라이언트가 서버에 데이터를 요청하는 HTTP의 데이터 전송 방식
- 클라이언트는 GET을 사용해 서버에 자료를 요청하고 서버는 이를 검토한 뒤 클라이언트에 해당 데이터를 제공
- 데이터베이스의 SELECT와 유사
특징
- 클라이언트는 URL에 요청할 데이터를 추가해서 보냄
(ex. www.something.com/database?title=game&data=starcraft)
- URL에 데이터를 노출시켜 보내기 때문에 보안성이 취약
- URL에서 '?'이후에 값을 추가하여 데이터를 요청, '&'으로 데이터를 결합
- 한번에 보내는 글자수는 255자로 제한됨
예제
<HTML>
<HEAD><TITLE> get 방식 예제 </TITLE></HEAD>
<BODY><CENTER>
<FORM NAME="form1" ACTION="get_meth_view.asp" METHOD="get">
이 름 : <INPUT TYPE="text" NAME="uname">
메 일 : <INPUT TYPE="text" NAME="mail">
<P></P>
<INPUT TYPE="submit" VALUE="전송">
<INPUT TYPE="reset" VALUE="다시">
</FORM></CENTER>
</BODY>
</HTML>
(출처 : http://egloos.zum.com/dkbalm/v/769595)
위 코드를 htm파일로 저장하여 uname을 name으로 mail을 mailladd로 입력하여 전송을 클릭하면
get_meth_view.asp?uname=name&mail=mailadd 의 주소로 url에 데이터가 담겨 전송되는 것을 확인할 수 있다.
[POST]
- 일반적으로 클라이언트가 서버에 데이터를 저장하거나 수정하는 HTTP의 데이터 전송 방식
- POST기능은 주로 서버에데이터를 저장, 갱신하하는 용도로 사용
- 데이터베이스의 INSERT, UPDATE와 유사
특징
Message의 Header에 데이터를 포함시켜 전송
클라이언트에서 데이터를 인코딩 해서 전송하면 서버는 데이터를 디코딩하여 처리
일정 크기 이상의 데이터를 전송하는데 사용
예제
<HTML>
<HEAD>
<TITLE> POST 방식 예제 </TITLE>
</HEAD>
<BODY>
<CENTER>
<FORM NAME="form1" ACTION="post_meth_view.asp" METHOD="post">
이 름 : <INPUT TYPE="text" NAME="uname">
<BR>
메 일 : <INPUT TYPE="text" NAME="mail">
<BR><BR>
<INPUT TYPE="submit" VALUE="전송">
<INPUT TYPE="reset" VALUE="다시">
</FORM>
</CENTER>
</BODY>
</HTML>
(출처 : http://egloos.zum.com/dkbalm/v/769595)
위 코드를 htm파일로 저장하여 동일하게 입력한 후 전송하면 url에 데이터가 포함되지 않는 것을 확인할 수 있다.
[다른 기능들]
GET과 POST 말고도 다양한 HTTP 통신 방식이 존재.
- PUT : 기본적으로 POST와 유사한 기능(데이터 추가, 갱신)을 제공하지만 멱등적(idempotent)임.
(멱등적 : 요청에 대해 항상 같은 결과가 나와야 함. 즉, 여러번의 PUT을 시행해도 결과는 항상 동일함)
- HEAD : 기본적으로 GET과 유사한 기능(데이터 요청)이지만 response message에 body가 존재하지 않음
- DELETE : 서버에 존재하는 데이터를 제거하는 용도로 사용
[참고자료]
http://egloos.zum.com/dkbalm/v/769595
https://www.zerocho.com/category/HTTP/post/5b3723477b58fc001b8f6385
https://www.w3schools.com/tags/ref_httpmethods.asp
'Computer Science > Network' 카테고리의 다른 글
통신 서비스와 라우터 (0) | 2022.12.14 |
---|---|
IPv4 주소 체계 (0) | 2018.10.23 |
네트워크 통신망의 종류 (0) | 2018.10.23 |
HTTP 메세지 (0) | 2018.09.28 |
HTTP 통신 (0) | 2018.09.28 |