일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 명부
- 자재정보
- 웹교적부
- 부품정보
- 교회홈페이지
- 교적부
- 전자결재
- 쇼핑몰
- 교회전산
- 전자부품유통
- 전자부품
- 단체홈페이지
- 웹erp
- 홈페이지제작
- 디바이스마트
- 회원명부
- 보안시스템
- 전자부품전
- 회원앱
- 사내정보
- 디지키
- VirtualBox
- 웹명부
- digikey
- 버츄어머신
- 단체앱
- composer #codeigniter #codeigniter4
- 회원관리
- 온라인유통
- 교회앱
- Today
- Total
미디어 온 연구실
웹을 연결하는 HTTP 요청 메소드 본문
1. HTTP 요청 메소드란?
클라이언트는 필요할 때 서버에 자원(Resource - 리소스)을 요청하고, 서버는 요청에 따라 자원을 보내주거나, 변경하는 일을 하게 됩니다.
자원을 어떻게 다루느냐에 따라서 http 메소드가 달라집니다. "동사(verb)" 4종류(GET,POST,PUT,DELETE) 와 명사 5종류(HEAD, CONNECT, OPTIONS, TRACE, PATCH) 를 합쳐서 총 9개가 있습니다.
2. 요청 종류
1) HEAD : 메세지 헤더(문서 정보) 취득
GET과 유사한 방식이지만, 실제 문서를 요청하는 것이 아니라, 문서 정보를 요청하는 것이다.
이에 따라 HTTP 응답 메세지에 본문(Body)없이 HTTP 헤더 정보만을 보냄.
사진 출처: 클릭
2) GET: URI 형식으로 웹 서버측 리소스(데이터)를 요청 파라미터를 넘겨서 해당하는 본문형식을 받는다.
사진 출처: 클릭
위 그림처럼 URI형식으로 서버에 요청해 데이터를 받는다. 그러므로 본인이 서버에 파라미터를 날릴 때 url에 찍히는 것이 보기 싫다면 POST로 요청해야한다.
3) POST: 내용 전송(파일 전송 가능)
클라이언트에서 서버로 전달하고자하는 정보를 서버로 보냄
4) PUT: 내용 갱신 위주(파일 전송 가능)
POST처럼 정보를 서버로 제출하는 것이나 보통 갱신 위주다.
5) DELETE: 파일 삭제
웹 리소스를 제거할 때 사용한다. 하지만, DELETE의 경우 서버에서 클라이언트의 요청을 무시 가능하기 때문에 실제로 삭제되지 않았지만, 클라이언트는 파일이 삭제 되었다고 생각할 수 있다.
6) OPTIONS: 웹 서버측 제공 메소드에 대한 질의
가능한 메소드 옵션에 대한 질의이다. 이 경우 응답 메세지에 HTTP 헤더 항목 중 'Allow: GET, POST, HEAD'처럼 보내게 된다.
7) TRACE: 요청 리소스가 수신되는 경로를 보여줌.
자기 앞으로 요청 메세지를 반환(루프백) 시험
8) CONNECT: 프록시 서버와 같은 중간 서버 경유
이 메소드는 요청한 리소스에 대해 양방향 연결을 시작하는 메소드다.
CONNECT 메소드는 SSL(HTTPS)를 사용하는 웹 사이트 접속하는데 사용할 수 있다.
클라이언트는 원하는 목적지와 TCP연결을 HTTP 프록시 서버에 요청한다. 그러면 서버는 클라이언트 대신하여
연결의 생성을 진행한다. 한번 서버에 의해 연결이 수립되면, 프록시 서버는 클라이언트에 오고가는
TCP 스트림을 계속해서 프록시한다.
전체적으로, 개발에서 GET, POST 방식 이외에는 보안이 취약해서 사용을 권장하지 않는다는 글들이 많았다.
참고 및 출처:
1. 메소드 내용: http://www.ktword.co.kr/abbr_view.php?m_temp1=3791
2. 메소드 내용:https://developer.mozilla.org/ko/docs/Web/HTTP/Methods/CONNECT
3. GET,POST 이외에 보안이 취약하다는 글: http://coashanee5.blogspot.com/2017/03/http.html?m=1
'웹과 프로그래밍 이야기' 카테고리의 다른 글
오픈소스 비즈니스 모델에 대한 정리 (0) | 2021.07.09 |
---|---|
애자일 방법론 폭포수 방법론 비교 (0) | 2021.07.08 |
그림으로 보는 Frontend & Backend 프로그래밍 (0) | 2021.07.08 |