作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
从 Python Flask API,我想在单个 API 响应中返回图像流和一些文本。
类似这样的事情:
{
'Status' : 'Success',
'message': message,
'ImageBytes': imageBytes
}
此外,我想知道 imageBytes
使用的最佳格式是什么,以便客户端应用程序(Java/JQuery)可以解析和重建图像。
如果上述方法不正确,请提出更好的方法。
最佳答案
以下内容对我有用:
import io
from base64 import encodebytes
from PIL import Image
# from flask import jsonify
def get_response_image(image_path):
pil_img = Image.open(image_path, mode='r') # reads the PIL image
byte_arr = io.BytesIO()
pil_img.save(byte_arr, format='PNG') # convert the PIL image to byte array
encoded_img = encodebytes(byte_arr.getvalue()).decode('ascii') # encode as base64
return encoded_img
# server side code
image_path = 'images/test.png' # point to your image location
encoded_img = get_response_image(image_path)
my_message = 'here is my message' # create your message as per your need
response = { 'Status' : 'Success', 'message': my_message , 'ImageBytes': encoded_img}
# return jsonify(response) # send the result to client
关于python - 如何从 Python Flask API 以 JSON 响应形式返回图像流和文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57346338/
我是一名优秀的程序员,十分优秀!