Springboot

Ajax통신 정리

열곰탱 2022. 9. 17. 18:45

HTTP통신을 하면 HTML로 받는다. -> 전체Reload를 해야한다. 

AJAX통신을 하면 데이터로 받는다 -> 부분Reload를 해야 한다.

자바스크립트로 비동기 통신을 한다 => ajax통신

ajax통신은 자바스크립트 만으로 통신을 할 수 있다.

ajax는 데이터로만 응답 받을 수 있다. 

 

 

 

Get    -   a태그, 주소요청(브라우저) - 예외로 Ajax통신을 사용하는 경우 (비동기 통신, 부분 리로드)할때 사용

Post  -  ajax통신    Body데이터 O

Put    - ajax통신      Body데이터 O

Delete -  ajax통신    Body데이터 X   

 

 

Mime 타입

 클라이언트에게 전송된 문서의 다양성을 알려주기 위한 메커니즘

- text/html

-text/plain

- application/json(json처럼생김)

-x-www-form-urlencoded (쿼리스트링같이 생김)

 

ex) username = ssar$password=1234로 보낸다면 Mime type은

application/x-www-form~~~ 이다

 

 

HTTP

header에 Context-Type은 확장자가 무엇인지 알려준다.

브라우저(쿨라이언트)는  요청을하고 응답을 받으면(html을 응답받으면) 

기본프로토콜이 전체 새로고침(부분 새로고침이 아니다.)을 한다. 

 

쿼리스트링을 뒤에 붙여서 요청을 하면 (?data=구름)

응답을 할때 a.html이 먼저 뜨고 body에 있는 내부코드에는

얼굴과 구름이 같이 있는 상태로 응답을 할것이다.

응답받은 브라우저는 전체 다운로드를 한다.

AJAX 통신

ajax로 통신을 하면 디비에서 데이터를 받는다.

응답받는 파일이 html이 아니기 때문에 text로 받는다.

데이터를 자바스크립트 변수(달)로 받을 수 있다.

필요한 돔을 찾아서 브라우저에 그려준다.