Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Memaparkan Data Distrim Masa Nyata dengan Berkesan daripada Pandangan Kelalang?

Bagaimana untuk Memaparkan Data Distrim Masa Nyata dengan Berkesan daripada Pandangan Kelalang?

Barbara Streisand
Barbara Streisandasal
2024-12-05 10:26:101047semak imbas

How to Effectively Display Real-time Streamed Data from a Flask View?

Cara Memaparkan Data Distrim daripada Paparan Kelalang

Satu tugas biasa dalam pembangunan web ialah memaparkan data yang dijana dalam masa nyata. Data ini boleh datang daripada pelbagai sumber, seperti pangkalan data, penderia atau model pembelajaran mesin.

Dalam Flask, anda boleh menstrim data daripada paparan menggunakan kata kunci hasil. Ini membolehkan anda menghantar data kepada klien dalam ketulan, dan bukannya menunggu keseluruhan respons dijana. Ini boleh berguna untuk memaparkan data yang terlalu besar untuk dimuatkan dalam memori atau untuk memaparkan data yang sentiasa berubah.

Walau bagaimanapun, satu cabaran dengan data penstriman ialah anda tidak boleh mengemas kini templat HTML secara dinamik sebagai data dihantar. Templat diberikan sekali pada bahagian pelayan, dan kemudian dihantar kepada klien. Ini bermakna anda tidak boleh menggunakan JavaScript untuk mengemas kini templat dalam masa nyata.

Terdapat dua cara utama untuk menyelesaikan masalah ini:

  1. Gunakan JavaScript untuk membaca respons yang distrim dan mengeluarkan data pada sisi klien. Ini memperkenalkan kerumitan, tetapi ia membenarkan pengemaskinian halaman terus dan memberikan kawalan sepenuhnya ke atas rupa output.
  2. Gunakan iframe untuk memaparkan output HTML yang distrim. Ini adalah penyelesaian yang lebih mudah, tetapi ia mempunyai beberapa kelemahan. Iframe ialah dokumen berasingan, yang meningkatkan penggunaan sumber. Memandangkan ia hanya memaparkan data yang distrim, mungkin tidak mudah untuk menggayakannya seperti seluruh halaman. Ia hanya boleh menambah data, output yang begitu lama akan dipaparkan di bawah kawasan skrol yang boleh dilihat. Ia tidak boleh mengubah suai bahagian lain halaman sebagai tindak balas kepada setiap acara.

Berikut ialah beberapa contoh cara untuk melaksanakan kedua-dua penyelesaian:

Menggunakan JavaScript untuk mengemas kini halaman terus

<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>

Menggunakan iframe untuk memaparkan HTML yang distrim output

<iframe src="/stream"></iframe>

Penyelesaian terbaik untuk anda bergantung pada keperluan khusus anda. Jika anda perlu mengemas kini halaman secara terus dan mempunyai kawalan sepenuhnya ke atas output, maka menggunakan JavaScript ialah pilihan terbaik. Jika anda memerlukan penyelesaian yang lebih mudah atau jika anda tidak perlu mengemas kini halaman secara langsung, maka menggunakan iframe ialah pilihan yang baik.

Atas ialah kandungan terperinci Bagaimana untuk Memaparkan Data Distrim Masa Nyata dengan Berkesan daripada Pandangan Kelalang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn