web显示服务器文件内容,在通过瓶子web服务器呈现的html页面中显示iframe中的文本文件的内容...

博主正在尝试通过Flask web服务器将日志文件的内容动态显示在HTML页面的iframe中。他们已经能够通过生成器函数从'/stream'路由获取日志,并用JavaScript更新iframe的内容,但目前显示的是整个页面。他们寻求一种方法,以便在多个HTML页面中以iframe的形式统一查看日志文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我使用flask webserver来保持我的UI。该服务器生成一个日志文件。我想让我们说,HTML页面下方的一个iframe(通过烧瓶render_template('index.html')呈现的)显示该文件的内容。

我知道像this和感谢@davidism的问题我已经学习了关于静态文件的好的概念,但那不是我想要达到的。

到目前为止,我可以说,再次感谢@davidism,我有一个main.py文件是这样的:

from time import sleep

from flask import Flask, render_template

app = Flask(__name__)

@app.route('/')

def index():

return render_template('index.html')

@app.route('/stream')

def stream():

def generate():

with open('job.log') as f:

while True:

yield f.read()

sleep(1)

return app.response_class(generate(), mimetype='text/plain')

app.run()

,并通过使用这样的:

 
 

var output = document.getElementById('output');

var xhr = new XMLHttpRequest();

xhr.open('GET', '{{ url_for('stream') }}');

xhr.send();

setInterval(function() {

output.textContent = xhr.responseText;

}, 1000);

我得到的日志在一个干净的整页。我如何以上述方式得到这个结果。

p.s:我有将在未来呈现的多个html文件,我希望以一种方式在所有页面中具有该日志文件的iframe视图。

2016-03-12

Sina Sh

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值