Flask 뷰에서 스트리밍 데이터를 표시하는 방법
웹 개발의 일반적인 작업 중 하나는 실시간으로 생성되는 데이터를 표시하는 것입니다. 이 데이터는 데이터베이스, 센서 또는 기계 학습 모델과 같은 다양한 소스에서 나올 수 있습니다.
Flask에서는 Yield 키워드를 사용하여 뷰에서 데이터를 스트리밍할 수 있습니다. 이를 통해 전체 응답이 생성될 때까지 기다리지 않고 클라이언트에 데이터를 청크로 보낼 수 있습니다. 이는 메모리에 담기에는 너무 큰 데이터를 표시하거나 끊임없이 변화하는 데이터를 표시하는 데 유용할 수 있습니다.
그러나 스트리밍 데이터의 한 가지 과제는 HTML 템플릿을 다음과 같이 동적으로 업데이트할 수 없다는 것입니다. 데이터가 전송됩니다. 템플릿은 서버 측에서 한 번 렌더링된 다음 클라이언트로 전송됩니다. 즉, JavaScript를 사용하여 템플릿을 실시간으로 업데이트할 수 없습니다.
이 문제를 해결하는 두 가지 주요 방법이 있습니다.
다음은 두 가지 솔루션을 구현하는 방법에 대한 몇 가지 예입니다.
JavaScript를 사용하여 업데이트 페이지 직접
<script> var xhr = new XMLHttpRequest(); xhr.open('GET', '/stream'); xhr.send(); xhr.onload = function() { if (xhr.status === 200) { var data = xhr.responseText; // Update the page with the new data } }; </script>
iframe을 사용하여 스트리밍된 HTML 표시 출력
<iframe src="/stream"></iframe>
가장 적합한 솔루션은 특정 요구 사항에 따라 달라집니다. 페이지를 직접 업데이트하고 출력을 완전히 제어해야 하는 경우 JavaScript를 사용하는 것이 가장 좋습니다. 더 간단한 솔루션이 필요하거나 페이지를 직접 업데이트할 필요가 없다면 iframe을 사용하는 것이 좋은 선택입니다.
위 내용은 Flask 보기에서 실시간 스트리밍 데이터를 효과적으로 표시하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!