GET vs POST
GET과 POST는 HTTP 프로토콜에서 클라이언트와 서버간의 요청과 응답에 일반적으로 사용되는 두 가지 방법(메서드)입니다.
GET
지정된 리소스에서 데이터를 요청합니다.
- 요청을 캐시할 수 있습니다.
- 요청이 브라우저 기록에 남아있습니다.
- 요청을 북마크에 추가할 수 있습니다.
- 중요한 데이터를 다룰때 GET을 사용하면 안됩니다.
- 요청에 길이 제한이 있습니다.
- 요청은 데이터를 검색하는데만 사용해야 합니다.
POST
처리 할 데이터를 지정된 리소스에 제출합니다.
- 요청은 캐시되지 않습니다.
- 브라우저 기록에 남아 있지 않습니다.
- 요청을 북마크에 추가할 수 없습니다.
- 요청에는 데이터 길이에 대한 제한이 없습니다.
어떻게 사용해야 하는가?
- SELECT 기능을 원한다면 GET 메서드를, UPDATE 기능을 원한다면 POST 메서드
- 검색 결과등 고정적인 주소 및 링크 주소로 사용될 수 있다면 GET 메서드를 사용
- 정보를 담을 URL 길이는 한계가 있고 해결하고 싶다면 POST 메서드를 사용
- POST 메서드를 쓰면 정보를 숨길 수 있다. 하지만 SSL을 이용하지 않는다면 뚫리는것은 마찬가지 이다.
- GET은 캐시가 남아있어 전송 속도가 빠르고 POST는 캐시가 남아있지 않아 보안적인 면에서 유리하다
- GET은 브라우저 히스토리에 파라미터가 남고 POST는 저장되지 않는다.
- GET은 ASCII 캐릭터만 허용하나 POST는 제한이 없다. POST는 바이너리 데이터가 허용된다. 따라서 파일 입출력에 POST 메서드가 사용된다.
참고
https://www.w3schools.com/tags/ref_httpmethods.asp
http://blogchannel.tistory.com/163
'개발 관련 > 웹 개발' 카테고리의 다른 글
Sublime Text3 설치 후 Package Control 실행 안될 때 (0) | 2017.02.22 |
---|---|
웹소켓(WebSocket)을 사용하는 이유 (0) | 2017.02.21 |
HTTP의 진화 (0) | 2017.02.21 |
REST, RESTful, RESTful API (0) | 2017.02.21 |
URN, URL, URI (0) | 2017.02.20 |
댓글 로드 중…