[파이썬] Flask에서 AJAX 처리
Flask는 파이썬으로 작성된 웹 애플리케이션을 개발하기 위한 마이크로 프레임워크입니다. 이 프레임워크는 웹 요청에 대한 처리를 단순하게 만들어주고, AJAX와 같은 비동기 통신을 간편하게 처리할 수 있는 기능도 제공합니다.
AJAX(Asynchronous JavaScript and XML)는 웹 어플리케이션이 비동기적으로 데이터를 서버로부터 받아오고 화면을 업데이트하는 방식을 의미합니다. 이를 통해 웹 페이지의 사용자 경험을 향상시킬 수 있습니다.
Flask에서 AJAX를 처리하기 위해서는 다음과 같은 단계를 따라야 합니다:
1. 필요한 라이브러리 설치
AJAX를 사용하기 위해 Flask에서는 jQuery와 같은 JavaScript 라이브러리를 사용합니다. 우선 해당 라이브러리를 설치해야 합니다.
$ pip install flask
$ pip install jQuery
2. Flask 애플리케이션 설정
Flask를 사용하여 AJAX 처리를 하기 위해서는 기존의 Flask 애플리케이션에 몇 가지 설정을 추가해야 합니다.
from flask import Flask, jsonify, request
app = Flask(__name__)
@app.route('/ajax', methods=['POST'])
def ajax_handler():
data = request.get_json() # AJAX 요청으로부터 데이터를 받아옴
# 데이터 처리 로직 작성
return jsonify(response_data) # AJAX 응답으로 데이터를 보냄
if __name__ == '__main__':
app.run()
3. JavaScript 코드 작성
웹 페이지에서 AJAX 요청을 보내기 위한 JavaScript 코드를 작성해야 합니다. 이 코드는 jQuery를 이용하여 AJAX 요청을 보내고 응답을 처리합니다.
$(document).ready(function() {
$('#submit-button').click(function() {
var data = { 'key': 'value' }; // AJAX 요청에 담을 데이터
$.ajax({
url: '/ajax',
type: 'POST',
contentType: 'application/json',
dataType: 'json',
data: JSON.stringify(data),
success: function(response) {
// 응답을 받아서 화면을 업데이트하는 로직 작성
}
});
});
});
4. 실행
Flask 애플리케이션과 JavaScript 코드를 작성한 후에는 애플리케이션을 실행하고 웹 페이지에서 동작을 확인할 수 있습니다.
$ python app.py
위의 단계를 따라 Flask에서 AJAX를 처리하는 간단한 예제를 작성할 수 있습니다. AJAX를 활용하여 비동기적으로 데이터를 처리하고 화면을 업데이트할 수 있으므로, 웹 애플리케이션의 성능과 사용자 경험을 향상시킬 수 있습니다.