모든 컴퓨터 서비스는 인터넷 통신 규약인 프로토콜의 하나를 사용해 통신한다. 웹 사이트의 URL은 그 중 http와 https 프로토콜을 사용한다. 기존에는 http 프로토콜이 사용되었으며 점차 보안을 위해 보안 기능이 탑재된 https 프로토콜을 사용하기 시작했다.
사용자가 필요한 정보를 가져온다. 필요한 정보를 가져와서 조회하기 위해 사용된다. GET
은 select
적인 성향을 가진다.
서버에서 어떤 데이터를 가져와서 보여준다거나 하는 용도이지 서버의 값이나 상태를 바꾸지는 않는다.
인터넷 주소를 기준으로 이에 해당하는 데이터, 파일 요청. 클라이언트가 요청하는 쿼리를 &, ?
형식으로 결합해서 서버에 전달. 웹페이지 주소를 수정해 원하는 종류의 데이터를 받아 올 수 있음.
GET
으로 전송하면 url과 같이 데이터가 넘어간다.
플라스크에서 요청에 대한 정보는 request
에 담겨있고 객체는 안전을 보장한다. 파이썬에 존재하는 requests모듈이 아니라 플라스크 프레임워크에 존재하는 request를 불러와 사용해야한다. 이 request모듈에는 http메서드에 대한 정보를 얻을 수 있는 method와 GET방식으로 URL에 인자를 key=value
형태로 전달했을 때 그 인자를 참조할 수 있는 args, POST
나 PUT
방식의 HTML 폼 데이터를 얻을 수 있는 form
속성이 있다.
GET
방식의 경우 모든 파라미터를 url로 보내 요청하는 방식이다.
url에 파라미터로 값을 넣는 방법은 ?
를 붙이고 키=값
의 쌍 형태로 넣으면 된다. 파라미터를 추가하고자 할 때는 &
를 붙인 뒤 동일하게 추가한다.
http://localhost:5000/?name=user01&juso=평택시
데이터를 서버로 제출하여 추가 또는 수정하기 위해서 사용한다.
POST
요청은 눈에 파라미터가 보이는 GET
요청과 달리 전달하려는 정보가 HTTP body
에 포함되어 전달된다.
POST
는 서버의 값이나 상태를 바꾸기 위해서 사용한다. 글을 쓰면 글의 내용이 DB에 저장이 되고 수정을 하면 DB 값이 수정이 된다. 이럴 경우 POST
사용.
사용자가 필요한 값을 추가해서 요청하는 방법. 클라이언트가 요청하는 쿼리를 body에 넣어서 전송하므로 요청 내역을 직접 볼 수 없다.
서버에 송신, 비밀번호 등의 보안이 필요한 파라미터에 사용
GET
은 가져오는 것, POST
는 수행하는 것
GET
방식은 URL
에 데이터를 붙여서 전송하는 반면, POST
방식은 BODY
에 데이터를 넣어서 전송.
GET은 DB에서 찾아서 조회, POST는 DB에 새로운 정보 저장.