[python] Django XMLHttpRequest를 이용한 AJAX 통신 구현하기
이번 포스트에서는 Django 웹 애플리케이션에서 XMLHttpRequest를 활용하여 AJAX 통신을 구현하는 방법에 대해 알아보겠습니다.
AJAX란 무엇인가요?
AJAX(Asynchronous JavaScript and XML)는 웹 애플리케이션에서 비동기적으로 서버와 통신하여 페이지를 새로 고치지 않고 동적으로 변경할 수 있는 기술입니다. XMLHttpRequest 객체를 사용하여 서버와 데이터를 주고받을 수 있습니다.
Django에서 XMLHttpRequest를 사용하여 AJAX 통신 구현하기
1. XMLHttpRequest 객체 생성하기
var xhr = new XMLHttpRequest();
2. 서버로 데이터 전송하기
xhr.open('POST', '/your_api_endpoint/', true);
xhr.setRequestHeader("Content-Type", "application/json");
xhr.send(JSON.stringify({data: yourData}));
3. 서버 응답 처리하기
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.DONE) {
if (xhr.status === 200) {
var response = JSON.parse(xhr.responseText);
// 응답 데이터를 사용하여 화면 업데이트 또는 다른 작업 수행
} else {
// 오류 처리
}
}
};
위 코드는 JavaScript에서 XMLHttpRequest를 사용하여 서버로 데이터를 전송하고, 응답을 처리하는 예시입니다.
4. Django View에서 AJAX 요청 처리하기
from django.http import JsonResponse
def your_api_endpoint(request):
if request.method == 'POST':
data = request.POST.get('data')
# 데이터 처리 로직 수행
return JsonResponse({'result': 'success'})
else:
return JsonResponse({'result': 'error'}, status=400)
위 Django View 코드에서 your_api_endpoint
함수는 AJAX 요청을 처리하고, JSON 형태의 응답을 반환합니다.
이제 위 예제를 참고하여 Django 웹 애플리케이션에서 XMLHttpRequest를 사용하여 AJAX 통신을 구현해보세요.
이상으로 Django와 XMLHttpRequest를 이용한 AJAX 통신 구현에 대해 알아보았습니다. 자세한 내용은 Django 공식 문서를 참고하시기 바랍니다.