当前位置:首页 > 行业动态 > 正文

Flask返回图片

在Flask中返回图片,可以使用以下步骤:

1、安装Pillow库:首先需要安装Pillow库,它是一个Python图像处理库,可以使用以下命令进行安装:

pip install pillow

2、创建Flask应用:创建一个Flask应用,并定义一个路由来处理图片请求。

3、读取图片文件:使用Pillow库的Image模块读取图片文件。

4、将图片转换为字节流:将图片对象转换为字节流,以便将其作为HTTP响应发送。

5、设置响应头:设置HTTP响应头,指定内容类型为图片格式(如JPEG、PNG等)。

6、返回响应:将字节流作为HTTP响应返回给客户端。

下面是一个简单的示例代码:

from flask import Flask, send_file
from PIL import Image
import io
app = Flask(__name__)
@app.route('/image')
def serve_image():
    # 读取图片文件
    image = Image.open('example.jpg')
    # 将图片转换为字节流
    byte_arr = io.BytesIO()
    image.save(byte_arr, format='JPEG')
    byte_arr = byte_arr.getvalue()
    # 设置响应头
    response = make_response(byte_arr)
    response.headers['ContentType'] = 'image/jpeg'
    response.headers['ContentDisposition'] = 'inline; filename="example.jpg"'
    return response
if __name__ == '__main__':
    app.run()

在这个示例中,我们创建了一个Flask应用,并定义了一个名为serve_image的路由,当用户访问/image时,服务器将读取名为example.jpg的图片文件,将其转换为字节流,并设置响应头,将字节流作为HTTP响应返回给客户端。

0