将图像从flask发送到javascript
我正在尝试将一个图像从flask服务器发送到web脚本。第一台服务器连接到另一个API并获取一个映像。我不想保存此图像,只想将其转发到web应用程序脚本将图像从flask发送到javascript,javascript,flask,Javascript,Flask,我正在尝试将一个图像从flask服务器发送到web脚本。第一台服务器连接到另一个API并获取一个映像。我不想保存此图像,只想将其转发到web应用程序脚本 @app.route('/api/image',方法=['GET']) def return_image(): r=requests.get(f“{api\u url}/image”) 返回发送文件( BytesIO(r.内容), mimetype='image/jpeg', 如附件=真, 附件(filename='test.jpg') 我正
@app.route('/api/image',方法=['GET'])
def return_image():
r=requests.get(f“{api\u url}/image”)
返回发送文件(
BytesIO(r.内容),
mimetype='image/jpeg',
如附件=真,
附件(filename='test.jpg')
我正试图通过ajax请求获取此图像并显示它
function updateImage() {
$.ajax({
url: "/api/image",
type: "GET",
dataType: 'image/jpg',
success: function (res) {
$(theImg).attr("src", 'data:image/png;base64,'+ res);
M.toast({
html: 'Loading image: Success'
})
},
error: function () {
M.toast({
html: 'Loading image: Fail'
})
}
});
}
我试着让它工作,但没能。非常感谢您的帮助。乍一看,您的JS将数据uri写入src属性,但是
res
实际上是带有image/png
mimetype的二进制数据
因此,您需要在服务器端对r.content
进行base64编码,这实际上创建了整个uri服务器端,然后返回该字符串并让JS将其添加到src
属性中
或者,如果您只是想让您的JS支持现有的端点,那么您可以基于/api/image
响应