如何使用 FastAPI 在发布数据后下载文件?
使用 FastAPI 时,在发布数据后下载文件围绕着利用文件响应类。要实现此目的:
这里是示例:
<code class="python">@app.post("/download") async def download_file(request: Request): if request.method == "POST": form = await request.form() if form["message"] and form["language"]: # Process the data and generate the file here file_path = "path/to/file.mp3" headers = {"Content-Disposition": f"attachment; filename=downloaded_file.mp3"} return FileResponse(file_path, headers=headers, media_type="audio/mp3")</code>
请记住,如果您希望端点同时处理 GET 和 POST请求,使用@app.api_route() 和methods=["GET", "POST"] 或使用@app.post() 和@app.get() 定义单独的端点。
此外,如果如果您计划下载多个文件或需要更大的灵活性,请考虑使用其他概念,例如:
以上是如何使用 FastAPI 发布数据后下载文件?的详细内容。更多信息请关注PHP中文网其他相关文章!