AJAX란 무엇인가요?
_____1. Q: AJAX란 무엇인가요?
A: AJAX(Asynchronous JavaScript and XML)는 웹 페이지를 전체 새로고침하지 않고도 서버와 비동기적으로 데이터를 주고받아 웹 페이지의 일부분만 갱신할 수 있게 해 주는 기술 집합입니다. 사용자 경험을 향상시키고 응답성을 높이는 데 주로 사용됩니다.
2. Q: AJAX의 구성 요소는 무엇인가요?
A: AJAX는 다음 네 가지 핵심 요소로 구성됩니다.
• HTML/XHTML: 기본 문서 구조 및 표현
• CSS: 레이아웃과 스타일
• JavaScript: 동적인 UI 제어 및 이벤트 처리
• XMLHttpRequest 객체(혹은 Fetch API): 서버와의 비동기 통신
3. Q: AJAX의 동작 방식은 어떻게 되나요?
A:
1) 사용자가 버튼 클릭 등 이벤트를 발생시킴
2) JavaScript가 XMLHttpRequest 또는 Fetch API를 통해 서버에 요청 전송
3) 서버는 요청을 처리하고 JSON, XML, 텍스트 등으로 응답
4) 클라이언트 JavaScript가 응답을 받아 DOM을 동적으로 갱신
5) 페이지 전체가 아닌 필요한 부분만 변경
4. Q: AJAX의 장점은 무엇인가요?
A:
• 페이지 리로드 최소화로 빠른 사용자 경험 제공
• 서버 부하 감소(부분 요청만 처리)
• 대화형 웹 애플리케이션 구현에 용이
• 네트워크 대역폭 절약
5. Q: AJAX의 단점이나 한계는 무엇인가요?
A:
• 자바스크립트 비활성화 시 기능 제한
• 검색 엔진 최적화(SEO)에 불리할 수 있음
• 브라우저 호환성 문제 발생 가능
• 비동기 처리로 인한 복잡한 에러 핸들링 필요
6. Q: AJAX 사용 시 보안 이슈는 어떤 것이 있나요?
A:
• 크로스 사이트 스크립팅(XSS)
• 민감정보 노출 방지를 위한 TLS/SSL 적용
• 서버 측 입력 값 검증 및 토큰 기반 인증
7. Q: AJAX는 어느 범위의 브라우저에서 지원되나요?
A:
• 대부분의 최신 브라우저(Chrome, Firefox, Safari, Edge)에서 XMLHttpRequest와 Fetch API 지원
• 구형 IE(IE5~IE6)는 ActiveXObject를 통해 제한적으로 지원
• 폴리필(polyfill)이나 라이브러리(jQuery 등)를 사용해 호환성 확보 가능
8. Q: AJAX를 언제 사용하는 것이 좋나요?
A:
• 사용자 인터랙션이 많은 대화형 UI
• 실시간 데이터 갱신(채팅, 알림, 주식 시세)
• 부분 갱신으로 성능 최적화가 필요한 경우
• SPA(Single Page Application) 개발 시
9. Q: AJAX 예제 코드를 간단히 보여주세요.
A:
var xhr = new XMLHttpRequest();
xhr.open('GET', '/api/data', true);
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
var data = JSON.parse(xhr.responseText);
document.getElementById('result').innerText = data.message;
}
};
xhr.send();
10. Q: AJAX 개발 시 주의할 점은 무엇인가요?
A:
• 비동기 호출로 인한 동기화 문제(콜백 헬) 관리(프라미스·async/await 사용 권장)
• 네트워크 오류 및 타임아웃 핸들링 구현
• 서버 응답 형식(JSON/XML 일관성 유지)
• 사용자에게 로딩 상태(UI 스피너 등) 제공
이상으로 AJAX에 대한 주요 FAQ를 정리하였습니다.
작성자:
최지윤 [비회원]
| 작성일자: 1년 전
2024-09-10 10:10:35
조회수: 123 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
조회수: 123 | 댓글: 0 | 좋아요: 0 | 싫어요: 0
내용이 부정확하다면 싫어요를 클릭해주세요.