我正在使用 FastAPI 和
openpyxl
上传和解析 Excel 文件。它在我的本地计算机上运行良好,但是当我将 API 部署到 AWS Lambda 时,出现以下错误:“中央目录的偏移量错误”
其他帖子表明该文件已损坏,但在本地上传时工作正常。我正在使用相同的文件进行测试。
from openpyxl.reader.excel import load_workbook
def upload_report(file: UploadFile = File(...))
contents = file.file.read()
buffer = io.BytesIO(contents)
wb = load_workbook(buffer, data_only=True) # Error thrown here.
...
使用Python 3.12、fastapi 0.111.0和openpyxl 3.1.5
问题与 AWS API Gateway 如何处理二进制数据有关,如本文中所述 使用 API Gateway 启用二进制支持
也就是说,它必须经过专门配置才能被接受,或者数据在管道中转换为 Base 64。
multipart/form-data
,然后单击 保存更改。Accept
和 Content-Type
。