코딩/HTTP, 네트워크

[HTTP/네트워크] Ajax

2워노 2023. 5. 26. 18:34

⚡ Ajax가 뭘까?

  • Ajax란 Asynchronous Javascript and Xml의 약자입니다.
  • 이는 자바스크립트의 라이브러리 중 하나이며, 브라우저가 가지고 있는 객체를 이용하여,
  • 전체 페이지를 새로고침 하지 않고, 페이지의 일부분만 로드하는 기법입니다.
  • 즉, 자바스크립트를 통해서 서버에 데이터를 비동기 방식으로 요청하는 것입니다.

 

⚡ 비동기 방식이란?

  • 비동기 방식은 웹페이지 전체를 리로드 하지 않고, 필요한 부분만 데이터를 불러오는 방식입니다.

 

⚡ 그렇다면 왜 Ajax를 쓸까요?

  1. 단순하게 웹에서 데이터를 조회하고 싶은 경우, 페이지 전체를 새로고침 하지 않기 위해서
  2.  json이나 xml등의 형태로 필요한 데이터만 받아 갱신하기 때문에 자원과 시간을 절약 할 수 있음

 

⚡ Ajax의 장 / 단점

❗️ 장점

  • 웹페이지 속도 향상
  • 서버 처리가 완료 될때까지 기다리지 않고 처리 가능
  • 서버에서 Data만 전송하면 되기때문에 전체적인 코드의 양이 줄어듬
  • 기존 웹에서 불가능했던 다양한 UI를 구현할 수 있음

❗️ 단점

  • 히스토리 관리가 힘듬(뒤로가기 하면 이전작업이 사라짐)
  • 페이지가 이동하지 않는 통신이기때문에 보안에 신경을 써야함
  • 연속으로 데이터를 요청시 서버 부하가 증가할 수 있음
  • HTTP클라이언트의 기능이 한정됨
  • Script로 작성되므로 디버깅이 힘듬
  • Cross-Domain 문제가 발생함( 다른 도메인과의 통신이 불가능함)