Memaparkan Data yang Distrim daripada Paparan Kelalang dalam Masa Nyata
Dalam Kelalang, penstriman data daripada paparan adalah mudah. Walau bagaimanapun, adalah tidak mungkin untuk mengemas kini templat HTML secara dinamik dengan strim ini.
JavaScript dan XMLHttpRequest
Satu penyelesaian ialah menggunakan JavaScript dan XMLHttpRequest. Kami boleh:
Contoh:
# App app = flask.Flask(__name__) # Streaming view @app.route('/') def index(): def generate(): # Simulate data generation for i in range(500): yield str(i) + '<br/>\n' return flask.Response(generate(), mimetype='text/html') # Run the app app.run(debug=True)
<!-- Template --> <p>Latest output: <span>
Menggunakan Iframe
Pendekatan lain melibatkan penggunaan iframe untuk memaparkan output HTML penstriman. Walaupun ini membolehkan fleksibiliti penggayaan dan kelebihan lain, ia juga memperkenalkan kelemahan:
Contoh:
index.html (Templat Utama)
<p>All output:</p> <iframe src="{{ url_for('stream') }}"></iframe>
Penstriman Lihat
@app.route('/stream') def stream(): @stream_with_context def generate(): yield '<link rel=stylesheet href="{{ url_for('static', filename='stream.css') }}">' for i in range(500): yield '<p>{{ i }}: {{ s }}</p>\n'.format(i=i, s=math.sqrt(i)) sleep(1)
strim.css (Lembaran Gaya Pilihan)
body { font-family: sans-serif; } p { margin-bottom: 10px; }
Dengan menggunakan sama ada JavaScript/XMLHttpRequest atau kaedah iframe, anda boleh memaparkan data yang distrim dengan berkesan daripada paparan Flask anda dan mengekalkan kemas kini dalam masa nyata.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memaparkan Data Masa Nyata yang Distrim daripada Pandangan Kelalang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!