使用flask实时更新pyserial数据

詹姆斯·霍尔

我试图实时查看数据,我必须关闭 python 程序来刷新数据。只有当我关闭 python 文件并重新启动它时它才会刷新。我希望数据实时刷新。

from flask import Flask
import serial



app = Flask(__name__)

water = serial.Serial("COM4",9600)
water1 = water.readline().decode('ascii')

# @ signifies a decorator
@app.route('/')
def index():
    return 'This is home page'

@app.route('/plant')
def plant():
    while True:
        return '<h2>soil is:</h2> ' + water1 + '%'





if __name__=="__main__":
    app.run()
海星

这取决于您所说的“实时”是什么意思。让我们先来看看 Flask 是如何工作的。

为什么它不起作用

带有@app.route装饰器的函数之外的所有内容都只会在服务器启动时执行一次。这就是为什么您的数据当前只提取一次,您的数据提取代码在这些函数之外:

water = serial.Serial("COM4",9600)
water1 = water.readline().decode('ascii')

页面刷新时刷新数据

现在,最简单的修复方法是每次刷新页面时获取数据,如下所示:

@app.route('/plant')
def plant():
    water = serial.Serial("COM4",9600)
    water1 = water.readline().decode('ascii')
    # while True: // don't use while True though, it'll freeze your program forever.
        return '<h2>soil is:</h2> ' + water1 + '%'

由于plan()在每次页面刷新时执行,因此您的数据也会更新。

“实时”刷新数据

不过,还有第三种选择,以实现通常称为“实时”的结果。但是,如果不使用 Javascript,您将无法绕过它。在这种情况下,您设置了一个 API,它将返回您的数据,您将从 Javascript 调用该数据。

但是,我怀疑您真正想做的是在页面刷新时刷新数据。如果不是这种情况,请在下面给我写评论,我会更新我的答案。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用 PHP 进行实时数据更新

来自分类Dev

如何使用实时数据更新decoview图表?

来自分类Dev

使用实时窗口聚合更新数据库

来自分类Dev

实时更新textView(使用for)

来自分类Dev

使用 Flask 和 JS 实时

来自分类Dev

如何在我的网站上实现实时更新(使用Flask)?

来自分类Dev

使用Chart.js使用数据库中的数据实时更新图表

来自分类Dev

实时更新数据库中的数据

来自分类Dev

使用Flask Web应用程序监视实时数据流

来自分类Dev

使用JSlider实时更新JLabel

来自分类Dev

使用线程实时更新JTextArea

来自分类Dev

使用 AJAX 实时更新表单

来自分类Dev

使用实时数据库更新 Android 应用程序的内部数据库

来自分类Dev

如何实时更新Firebase数据库?

来自分类Dev

实时更新文本数据

来自分类Dev

实时数据更新(车辆跟踪)

来自分类Dev

如何实时更新Firebase数据库?

来自分类Dev

实时更新数据库 firebase

来自分类Dev

使用来自 MySQL 的数据刷新 Flask 更新

来自分类Dev

使用Firebase CLI更新实时数据库中集合的每个节点中的项目

来自分类Dev

数据绑定到对象的KVP,对象不允许实时使用或更新属性?

来自分类Dev

在 Tkinter 中使用 Arduino 数据动态更新标签和实时图形

来自分类Dev

使用 kotlin 在特定时期更新 firebase 实时数据库

来自分类Dev

如何使用随机生成的ID将现有数据更新到Firebase实时数据库中的数据

来自分类Dev

Redux Store不会使用Firebase实时数据库上的已创建数据更新状态

来自分类Dev

使用pyserial将数据从python发送到arduino

来自分类Dev

使用pyserial将数据从python发送到arduino

来自分类Dev

更新数据库以实时更新信息-PHP

来自分类Dev

如何使用SwingWorker实时更新GUI?

Related 相关文章

热门标签

归档