使用fastapi下载文件

非洲西非

我正在浏览此文件,是否看到了在API中上传的功能?https://fastapi.tiangolo.com/tutorial/request-files/没有dl选项。我是否缺少某些东西?我希望为文件下载站点创建一个api。我应该使用其他API吗?

from typing import List
from fastapi import FastAPI, Query

app = FastAPI()
PATH "some/path"

@app.get("/shows/")
    def get_items(q: List[str] = Query(None)):
        '''
        Pass path to function.
        Returns folders and files.
        '''

        results = {}

        query_items = {"q": q}
        entry = PATH + "/".join(query_items["q"]) + "/"

        dirs = os.listdir(entry)
        results["folders"] = [val for val in dirs if os.path.isdir(entry+val)]
        results["files"] = [val for val in dirs if os.path.isfile(entry+val)]
        results["path_vars"] = query_items["q"]

        return results

这是python获取路径的文件和目录的代码示例,您可以将路径作为列表返回,并在循环中添加新条目,以更深入地了解文件树。传递文件名应该触发下载功能,但是我似乎无法获得下载功能。

阿维纳什·拉维(Avinash ravi)

这对我有用

from starlette.responses import FileResponse

return FileResponse(file_location, media_type='application/octet-stream',filename=file_name)

这将下载带有文件名的文件

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章