我是后端用flask 流式响应,然后想用unicloud流式接收再流式给前端小程序,目前只做了flask端的流式响应,后面的不会了,请求大佬帮助
![j***@qq.com](https://img-cdn-tc.dcloud.net.cn/account/identicon/5edaf6101c21030c668513d5f7ba368e.png)
- 发布:2023-03-22 11:22
- 更新:2023-03-22 11:50
- 阅读:1161
![j***@qq.com](https://img-cdn-tc.dcloud.net.cn/account/identicon/5edaf6101c21030c668513d5f7ba368e.png)
j***@qq.com (作者)
要将Flask端的流式响应发送到小程序上,您需要进行以下步骤:
-
将流式响应改为Chunked Transfer-Encoding:在返回数据的响应头中添加Transfer-Encoding为chunked,然后在响应正文中分割多个chunk块,每个chunk块大小在2kb到64kb之间是最佳大小。
-
将Flask端的流式响应发送到unicloud上:您需要使用unicloud提供的HTTP API,将收到的chunk块流式发送到小程序上。您可以使用unicloud提供的HTTP API通过Web服务器请求的方式,将chunk块流式发送到小程序上。
-
在小程序端接收流式数据并呈现出来:您需要在小程序代码中编写代码,以便接收HTTP API发送的流式响应,并将其呈现给小程序用户。
以上是大体的流程,其中需要注意的是,unicloud提供的HTTP API接收限制是4KB。所以你需要将Flask端响应的Chunk块大小控制在2KB到4KB之间会比较合适。具体实现上,您可以在Flask端向unicloud流式传递Chunk块时,在每个Chunk块前后手动添加一个特定字符码作为区块的标识,然后在小程序端接收到流式数据后根据特定字符码来还原Chunk块,并将其呈现给小程序用户。
j***@qq.com (作者)
问不出来,他死活不说正确的
2023-03-22 11:30