1. HTTP
1.1. HTTP의 GET과 POST
1.1.1. GET
1.1.2. POST
1. HTTP
HTTP (Hyper Text Transfer Protocol) 은 인터넷에서 데이터를 주고받을 수 있는 규약(프로토콜) 입니다.
이러한 규약 중 데이터를 요청(Request)하는 HTTP의 방식에 GET 방식과 POST 방식이 있습니다.
1.1. HTTP의 GET과 POST
특정 사이트에 정리해주신 자료 를 바탕으로 작성하였습니다.
User는 단순히 작성한 내용을 서버에 요청하고 끝내지 않고, 전달하여 DB에 저장하길 원합니다.
GET
/ POST
방식은 HTTP 프로토콜을 이용해서 서버에 요청할 때 사용하는 방식입니다.
두 방식은 차이점이 있으므로 이해하고 용도에 맞게 사용하는 것이 중요합니다.
1.1.1. GET
HTTP Request Message
의 Header에 url 이 담겨서 전송됩니다.- url에
?
뒤에 데이터를 붙여 request 를 보내는 방식입니다. - url에 담겨 전송되기 때문에 전송할 수 있는 데이터의 크기가 제한적입니다.
- 큰 데이터나 첨부파일 전송의 경우에
GET
방식은 적합하지 않습니다.
- 큰 데이터나 첨부파일 전송의 경우에
- 또 데이터가 url에 노출되기 때문에 보안이 필요한 데이터 (ex. password) 의 경우에는
GET
방식이 적절하지 않습니다. GET
방식은 서버에서 데이터를 가져와 보여주며 서버의 값/상태를 변경하지 않는 용도입니다.- 브라우저에서
Caching
할 수 있습니다.POST
방식으로 요청해야 할 것을GET
방식으로 요청할 경우, 기존에Caching
된 데이터가 응답할 가능성이 있습니다. 목적에 맞게 사용해야하는 이유가 여기에 있습니다.
1.1.2. POST
HTTP Request Message
의 Body에 담겨서 전송됩니다.GET
방식보다 큰 데이터를 전송할 수 있고 보안면에서 좋습니다. (그렇다고 하더라도 암호화를 하지 않으면 보안에 취약합니다.)POST
방식은 서버의 값/상태를 변경하거나 추가하는 용도입니다.
'SW > Computer Science' 카테고리의 다른 글
[WEB] 웹서비스 (0) | 2021.06.15 |
---|---|
[WEB] 쿠키와 세션 (0) | 2021.06.01 |
[OS] Mutex & Semaphore (0) | 2021.05.27 |
[OS] Process & Thread (0) | 2021.05.27 |
Comment