图片字段格式说明
更新时间:
文件字段格式说明
文件(像图片、音频、视频)作为入参数支持以下两种格式的参数传递:
URL 格式
说明:通过一个外部链接来引用文件资源。该 URL 应该是一个可访问的网络地址,并且指向的是一个有效的文件。
示例:
json复制代码{ "image": "https://example.com/image.jpg" }
注意事项:
确保 URL 是公开可访问的,避免私有网络或受限访问的 URL。
传递 URL 时,请确保提供对应文件资源的服务网络连接稳定,避免因为网络问题导致文件读取失败。
Base64 Data URI 格式
说明:直接将文件数据以 Base64 编码的形式嵌入到请求中。这种方式适用于文件较小且希望直接在请求中携带文件数据的场景。
示例:
json复制代码{ "image": "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQEASABIAAD/..." }
注意事项:
Base64 编码后的数据可能较大,建议在图片较小时使用此格式。
请确保文件数据的编码正确,并且带有正确的 MIME 类型前缀(如
data:image/jpeg;base64,
)。使用 Base64 编码会增加请求的大小,可能对请求性能产生影响,建议仅在需要时使用。
使用建议
对于大多数情况,建议使用 URL 格式,因为它能减少请求的体积,并且更适合引用已托管的文件资源。
Base64 Data URI 格式更适合于希望将文件数据直接嵌入到请求中的场景,如在数据保密或短期临时使用的场景下。
附录
以下提供一个将本地图片转成 Base64 Data URI 的 Python 工具类实现
import base64
import os
def get_photo_base64(image_path, image_format=None):
"""
将图像文件转换为Base64编码的数据URI
参数:
image_path (str): 图像文件的路径
image_format (str, optional): 图像格式,如果未提供,将根据文件扩展名自动检测
返回:
str: Base64编码的数据URI
"""
# 打开图像文件
with open(image_path, "rb") as image_file:
image_data = image_file.read()
# 如果未指定图像格式,从文件扩展名中获取
if not image_format:
_, extension = os.path.splitext(image_path)
image_format = extension.lstrip(".")
# 生成Base64编码的数据URI
base64_data = base64.b64encode(image_data).decode('utf-8')
data_uri = f"data:image/{image_format.upper()};base64,{base64_data}"
return data_uri
print(get_photo_base64('/xxx/xxx.png'))
print(get_photo_base64('/xxx/xxx.jpeg', "jpeg"))
文档内容是否对您有帮助?