본문 바로가기
공부일지 _ 데일리

2023.01.17 http with 김영한

by secret9 2023. 1. 17.

1. post는 uri요청에 id값이 안 들어가지만

/members

 

put은 uri 값에 id 값이 들어간다. 

 

/members/100 

 

그래서 pk값을 알고 있기 때문에 특정 리소스를 대체하거나 신규리소스 생성.

 

put은 완전히 대체하다는 특징이 있다.

 

부분 update가 아니라 전체를 overWrite한다고 생각하면 된다.

 

기존 것을 삭제하고 insert을 한다.

 

========

 

put vs patch

 

전체 변경은 put,

 

부분변경은 꼭 patch를 쓴다.

 

용도에 맞게 사용한다.

 

==============

 

http method를 용도에 맞게 쓰는게 매우 중요

 

===========

delete

 

DELETE /members/100

-> 리소스 삭제

 

========

 

http 캐시기능은

 

get, head method에서만 사용한다.

 

post, patch는 구현이 어렵다.

 

==================

 

http 서버로 데이터 전송 방

 

1,2번은 URI를 통해서 데이터 전

 

1. 정적데이터 조회 -> 이미지 파일 불러오기

 

2. 동적 데이터 조회// 쿼리스트링 사 -> 웹 사이트 화면 불러오기

 

조회는 GET  사용

 

3. html Form 데이터 전송 -> form에 담아서 submit해주면 브라우저가 http메세지를 만들어서  전송을 해준다.

//form은 html의 http 통신을 이용한다.

데이터는 키-값 형식으로 http body에 담아서 보낸다. //post 기준.

 

-사실 최신 스프링 프로그램은 form에 담아서 보내는 방식은 흔치 않고.

js 단에서 ajax방식으로 보낸다.

 

올드한 시스템들이 form방식을 계속 사용한다.(js을 이용한 http 통신이  더 장점이 많다.)

 

get방식으로 하면 쿼리스트링에 데이터를 담아서 보낸다. //http body에 담을 수 없으니까.

 

form은 get, post만 지원하기 때문에 http method사용에 한계가 많다.

-> restful하게 개발할 수 없기 때문에 보통 ajax통신을 사용한다

 

JS가 http통신을 하는 방법이 있는데 그게 대표적으로 ajax이다.

ajax는 자바스크립의 http 통신 메서드를 이용한다.

ajax와 JS의 관계를 잘 이해해야한다.

 

JS의 http 통신 기술 중 1개이다.

ajax의 최대 장점은 비동기식 통신이다.

 

4. HTTP API 통신

-> 서버 to 서버

-> JS의 ajax 통신.

- jqery, vue js, react 등

-> 거의 json 타입으로 통신(데이터 사이즈가 xml 대비 작다)

(과거에는 XML을 주로 사용했다. 그래서 ajax 이름에도 xml이 들어가는 것이다. 하지만 최근에는 json이 표준처럼 사용)

 

 

'공부일지 _ 데일리' 카테고리의 다른 글

2023.01.01 - 스프링 - 김영한  (0) 2023.01.01

댓글