Get방식 vs Post방식

Get : 데이터를 이름과 값이 결합된 형태로 url 뒤에 붙여서 전송하는 방식.

각각의 파라미터는 & 기호로 구분하고 이름과 값은 = 기호로 구분합니다.


1)url길이의 한계가 있어 정보의 양이 제한된다.(256바이트)

2)url형식에 맞게 파라미터의 이름과 값을 인코딩 한 후 전송해야한다.

3)값이 url에 노출되기 때문에 보안에 취약하다.

4)url기반으로 전송되기 때문에 form을 사용하지 않아도 주소창에 직접 url을 이요해 파라미터 전송이 가능하다.

5)전송속도가 빠르다


<form action="**.php" method="get">

<input type="text" name="id"/>

<input type="password" name="pwd"/>

<input type="submit" value="로그인">

각 폼에 abd, 1234라고 적으면 "./**.php?id=abc&pwd=1234"라는 url로 이동한다.


POST : 데이터 영역을 이용해 파라미터를 전송하게 된다.


1)스트림형태로 전송되므로 전송할 수 있는 파라미터의 길이에 제한이 없다.

2)데이터를 본문안에 포함하여 전송하기 때문이다.

3)데이터가 http header부분에 포함되어 전송되기 때문에 데이터가 노출되지 않아 보안성이 좋다.

4)서버 측의 정보 갱신을 원할 때 사용한다.


<form action="**.php" method="post">로만 바꿔주고 똑같이 입력하면

url이 "./**.php"라고만 뜬다.


홈페이지에 원격으로 로그인을 하여 작업하는 프로그램을 만들기 위해서는 각각 방식에 맞는 접근을 해야한다는 것을 명심하자.

댓글

MathGrammer

하고싶은거 공부하고 하고싶은거 하는 사람의 블로그