-
HTTP(hypertext transfer protocol)
서버와 클라이언트 사이에서 데이터를 주고 받기 위해 사용하는 프로토콜이다. HTTP 프로토콜은 요청(request) / 응답(response)을 통해 데이터를 주고 받는다. 요청(request) 이란 클라이언트(사용자)가 포털사이트에 특정 키워드를 입력한 뒤 'Enter' 버튼을 누르면 서버에서 키워드에 대한 요청을 받아 요청에 대한 응답으로 클라이언트(사용자)에게 키워드에 대한 화면을 보여주게된다.
GET와 POST
두 방식은 HTTP프로토콜에서 서버에 요청을 하는 대표적인 메소드이다.
GET
' ? ' 를 통해 주소(URL)와 구분한다. '?'과 같이 이름과 값으로 쌍을 이루는 요청 파라미터를 쿼리스트링이라고 부른다,
'&' 파라미터가 여러개인 경우 '&'를 사용하여 연결한다. (구분자 역할을한다 )
POST
GET에서 URI에 포함시켰던 파라미터들을 메세지의 바디에 넣는다.
GET 방식
○ 지정한 URI 의 정보를 가져오는 메소드로 많이 사용된다.
○ 많은 양의 데이터를 보내기 어렵다.(URI의 길이 제한 때문 255자)
○ 전달되는 데이터가 브라우저의 주소창에 노출된다.(보안 측면)
○ 추가적인 파라미터를 서버로 보내는 경우에 사용된다.(주소창에 데이터가 노출되도 되는경우, 데이터의 양이 적은경우)
○ 클라이언트로부터의 데이터를 이름과 값이 결합된 String형태로 전달한다.
POST 방식
○ 리소스를 생성하는 용도로 많이 사용된다.
○ 추가적인 파라미터를 서버로 보내는 경우에 사용된다.
○ 클라이언트에서 서버로 데이터 전송시 인코딩하여 서버로 데이터를 전송한다.
서버에서 클라이언트로 데이터 전송시 디코딩하여 데이터를 전송한다.
○ 전송 데이터의 양 제한이 없다.
'웹' 카테고리의 다른 글
리팩토링(Refactoring) (0) 2020.02.17 맥 장고(django) 설치 및 환경설정 (1) 2020.02.13 파이썬 가상환경 설정 (0) 2020.02.13 정적 페이지와 동적 페이지 (0) 2020.02.11 Plug-in org.springsource.ide.eclipse.commons.gettingstarted was unable to load class org.springsource.ide.eclipse.commons.gettingstarted.dashboard.WelcomeDashboard. (0) 2020.01.06