http 겟, 포스트 메소드

Kohalahal·2020년 7월 16일
0

자바국비

목록 보기
6/8

https://javarevisited.blogspot.com/2012/03/get-post-method-in-http-and-https.html#axzz6POYtKdVD

get http request

http나 https 프로토콜을 통해 요청을 보낼 때 쓸 수 있는 메소드가 몇 개 있는 데, get이 그 중 하나다. get은 이름처럼 서버에서 페이지를 찾아서 가져오는 것이다.

get의 중요 특징중 하나는 요청 파라미터가 URL 인코디드 스트링으로 보내진다는 것이다. 이는 누구나 다 볼 수 있기땜에 안전하지 않다. 그러나 아주 조아조아.

언제 get을 쓰는가

안전하지 않은데 왜 조아조아? 보안 필요한 정보는 안돼안돼. 그러나 웹 서버의 스태틱 콘텐츠 받아오는데 아주 짱이야. 다음과 같은 경우가 예시다.

  1. 반복 요청 해도 다른 길로 안샌다. 다른 페이지로 가는 링크 두 번 세 번 눌러도 상관 없듯이. 이 때문에 요청 ㄷㅓ 빨리 처리될 수도 있다.

  2. 민감, 기밀 정보 안보내고, 설정 정보 혹은 세션 아이디를 보낸다.

  3. get이 가리키는 URL이 즐겨찾기 가능했으면 좋겠다면.

  4. 전송할 데이터가 크지 않고, 모든 브라우저의 URL의 최대 길이보다 짧다면. 보통은 브라우저간에 URL 최대 길이 다른데, 그보다 짧은게 좋겠졍

post http method는 뭐니?

post 요청은 http에 post라는 메소드가 있나봄?? 그거다.
URL로 안보내지고, 메세지 바디로 보내진다. 거의 모든 인증 요청은 post 메소드로 보내진다. 안전하고, https로 안전하게 encrypted될 수 있다. 다음과 같은 때에 post 메소드 쓰자.

  1. URL안에 넣을 수 없을 만큼 큰 데이타 보낼 때

  2. 민감, 기밀 정보 보낼 때. (id, 비번, 계정 번호...)

  3. 어플리케이션의 상태를 바꿀(alter) 데이터를 submit할 때. (결제 프로세스 할 카트에 아이템을 넣을 때...)

  4. URL에 쿼리 파라미터 보여주기싫고, secure 어플리케이션 만들고 싶을 때.

get, post 차이

  1. 겟 메소드는 url로 파라미터보냄/포스트는 리퀘스트 바디에 보냄
  2. 겟 요청은 한정된 양의 데이터만 보낼수있/포스트는 큰것도 보냄
  3. 겟은 즐찾 가능, 캐시 가능/포스트는 불가능
  4. 겟은 보통 보는 용도(sql select)/포스트는 업데이트 용도(sql insert or update)

0개의 댓글