将图像从flask发送到javascript

将图像从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') 我正

我正在尝试将一个图像从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')
我正试图通过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
响应