如何使用单个 get 请求从 python Flask 中的 REST 服务器返回获得连续响应

vij*_*hna 2 python rest ssl https flask

我们可以使用 python 的单个 GET 请求从 REST 服务器获取连续数据吗?我暂时使用烧瓶。

@app.route('/', methods = ['GET'])
def hello_world():
   while True:
     return 'Hello World!'
Run Code Online (Sandbox Code Playgroud)

这将返回“Hello World!” 一次,但我希望将字符串连续发送到客户端,直到服务器程序停止或按下硬件停止(CTRL + C)。或者甚至我很乐意在给定时间内连续发送字符串或 XML。

sco*_*tus 5

是的,有办法,但是不像GET那么简单。您必须构建后端 python 以异步工作并在没有请求的情况下发送更新。我见过的最好的方法是使用 socket.io:

套接字.io

这是一个教程,展示了一种提升您所询问的字符串数据的方法:

简单的网络套接字

如果没有更多内容,很难给您一个代码片段,因为短语“Hello World”是静态的,您不会看到更改,因此它没有用。但第二个链接向您展示了如何设置它来检测更改、确认连接/断开连接以及将数据从服务器传输到客户端。

如果您再次陷入困境,请使用真实代码和真实数据编辑帖子。