gpt4 book ai didi

python - 为什么我无法使用 "Send_file"从 Flask 发送图像以使用react

转载 作者:行者123 更新时间:2023-12-05 07:01:38 28 4
gpt4 key购买 nike

我创建了一个 React 应用程序,它从 React 前端获取信息,将其发送到带有 axios 的 Flask 后端,然后由后者处理信息并创建一个新图像。我试图让 flask 通过 send_file 发送图像以使用react,但我不确定该怎么做。我尝试将图像保存为 png,然后发送它,但是 react 端不能使用它,因为它是编码的。这是怎么回事: flask :

img = Image.fromarray((np.uint8(cm(img)*255)))
img.save("./thenewimg.png")
return send_file('./thenewimg.png','image/png')

react :

class App extends React.component{
onReturnProcessed = res =>{
console.log(res.data)
this.setState({img:res.data})
this.setState({ImgReturned:true})
console.log(res.data.img)

}
return axios
.post(`http://localhost:5000/time`, data, {
headers: {
'Content-Type': 'multipart/form-data',
},
})
.then(res => {
this.onReturnProcessed(res);
return res
});
}
render(){
return(

<div>
{this.state.ImgReturned &&
<img src={(this.state.img)} />}
</div>

);
}
}


React 然后将状态变量“img”设置为 flask 返回的任何内容(即 flask 发送给它的文件)。我尝试在图像 html 行中显示此状态变量,但它不允许。关于如何执行此操作的任何想法?

注意:这些都不是完整的代码,但我认为它们提供了了解完成的内容所需的大部分内容。

这是记录“img”状态变量时在控制台中打印的一些内容:��m�O<��+������ ��S����i<��G��~ qZrWe������s��~9����

最佳答案

您将第二个位置参数传递给 send_file,它是 doesn't accept .

我认为您正在寻找:

return send_file('./thenewimg.png', mimetype='image/png')

但是,当您将文件名作为第一个参数传递时,它应该会根据 .png 扩展名自动检测 mimetype,因此您可能只需:

return send_file('./thenewimg.png')

关于python - 为什么我无法使用 "Send_file"从 Flask 发送图像以使用react,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63784235/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com