24小时甜食贩卖机 2023-10-24 14:24 采纳率: 0%
浏览 6

关于#python#的问题:reuqest flask我想通过服务器flask和前端的reques实现后台到前台的流式推理前台request

python
我想通过服务器flask和前端的reques实现后台到前台的流式推理
前台request

res = requests.post('http://127.0.0.1/post', data=string)

后台flask

@app.route("/xuxie", methods=['GET'])
def predict():
    upload_file = request.get_data()
    str1 = str(upload_file, 'utf-8')
    def generate(str1):
        raw_text = str1 + "[gMASK]"
        outputs = chuli()
        for output in  outputs:
            output = output.replace("\\n","\n")
            if request.args.get('stop') == 'true':
                break
            yield output
    return Response(stream_with_context(generate(str1)))

现在的问题是后台flask确实是流式传到前台,但是前台的request并不能流式的接收,只是一次性接收所有数据

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-10-24 17:01
    关注

    【以下回答由 GPT 生成】

    我可以帮你解决这个问题。

    首先,你需要将前端的请求改为使用stream=True参数来发送请求。这样可以启用流式传输。

    以下是修改后的前端代码:

    res = requests.post('http://127.0.0.1/post', data=string, stream=True)
    

    接下来,在前端代码中,你可以使用iter_content()方法来逐步接收数据。这个方法可以让你按照数据块的大小来逐步获取数据。

    以下是修改后的前端代码:

    res = requests.post('http://127.0.0.1/post', data=string, stream=True)
    for chunk in res.iter_content(chunk_size=8192):
        if chunk:
            # 在这里处理每个数据块
    

    通过以上修改,你的前端代码就可以实现流式接收后台数据的功能了。

    希望这个解决方案对你有帮助。如果你还有其他问题,请随时向我提问。



    【相关推荐】



    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 10月24日

悬赏问题

  • ¥20 设计一个二极管稳压值检测电路
  • ¥15 内网办公电脑进行向日葵
  • ¥15 如何输入双曲线的参数a然后画出双曲线?我输入处理函数加上后就没有用了,不知道怎么回事去掉后双曲线可以画出来
  • ¥50 WPF Lidgren.Network.Core2连接问题
  • ¥15 soildworks装配体的尺寸问题
  • ¥100 有偿寻云闪付SDK转URL技术
  • ¥30 基于信创PC发布的QT应用如何跨用户启动后输入中文
  • ¥20 非root手机,如何精准控制手机流量消耗的大小,如20M
  • ¥15 远程安装一下vasp
  • ¥15 自己做的代码上传图片时,报错