Notice
Recent Posts
Recent Comments
Link
혜야의 코딩스토리
[Web] get / post 비교 본문
✏️ get 방식
get방식은 서버로부터 정보를 조회하기 위해 설계된 메소드이다.
www.tistory.com/resources?name1=value1&name2=value2
-get방식은 요청을 전송할 때 필요한 데이터를 body에 담지 않고, 쿼리스트링을 통해 전송한다.
-get방식은 간편하다는 장점이 있지만 어떤 데이터를 전송하는지 노출되므로 보안상으로 좋지 않다.
//쿼리스트링 : url의 끝에 ?와 함께 이름과 값으로 쌍을 이루는 요청 파라미터
get 특징
- 서블릿에 데이터를 전송할 때는 데이터가 url 뒤에 name=value 형태로 전송된다.
- 여러 개의 데이터를 전송할 때는 '&'으로 구분해서 전송된다.
- get 요청은 캐시가 가능하다.
- get 요청은 브라우저 히스토리에 남는다.
- 보안이 취약하다.
- 전송할 수 있는 데이터는 최대 255자이다.
- 기본 전송 방식이고 사용이 쉽다.
- 웹브라우저에 직접 입력해서 전송할 수 있다.
- 서블릿에서는 doGet()을 이용해 데이터를 처리한다.
✏️ post 방식
post방식은 리소스를 생성/변경하기 위해 설계된 메소드이다.
www.tistory.com/resource
- post는 리소스를 생성/변경하기 위해 설계되었기 때문에 get과 달리 전송해야될 데이터를 Http메세지 body에 담아 전송한다. 이처럼 postT가 get보다 보안적인 면에서 안전하다고 생각할 수 있지만, post요청도 크롬 개발자 도구와 같은 툴로 요청 내용을 확인할 수 있기 때문에 민감한 데이터의 경우 반드시 암호화해서 전송해야 한다.
post 특징
- 서블릿에 데이터를 전송할 때는 TCP/IP 프로토콜 데이터의 body 영역에 숨겨진 채 전송된다.
- post 요청은 캐시되지 않는다.
- post 요청은 브라우저 히스토리에 남지 않는다.
- 보안에 유리하다.
- 전송 데이터 용량이 무제한이다.
- 전송 시 서블릿에서는 또 다시 가져오는 작업을 해야하므로 처리 속도가 get방식보다 느리다.
- 서블릿에서는 doPost()를 이용해 데이터를 처리한다.
참고
'꿈 : 멋진 개발자 🧸 > Web' 카테고리의 다른 글
[세미 프로젝트] 온라인 쇼핑몰 웹사이트 (0) | 2022.09.23 |
---|---|
[Web] Forward와 Redirect 차이 (0) | 2022.09.21 |
[Web] XML / JSON 비교 (0) | 2022.07.17 |