首页 > 其他分享 >fastapi文件上传下载

fastapi文件上传下载

时间:2023-07-26 10:23:15浏览次数:29  
标签:文件 fastapi 上传下载 filename file import path os

import os
import time
from fastapi import APIRouter, File, UploadFile
from fastapi.responses import FileResponse
router = APIRouter(tags=['Upload'], prefix='/upload')


@router.post("", summary='文件上传')
def create(uploadfile: UploadFile = File(...)):
    filename = f"{str(time.time()).replace('.','')}-{uploadfile.filename}"
    path = os.path.join("upload", filename)
    with open(path, "wb") as f:
        f.write(uploadfile.file.read())
        f.flush()

    return {
        "filename": filename
    }


@router.get("/{filename}", summary="文件下载")
def read(filename: str):
    file_path = os.path.join("upload", filename)
    if os.path.exists(file_path):
        return FileResponse(file_path)
    else:
        return {
            "msg": "沒有此文件"
        }

标签:文件,fastapi,上传下载,filename,file,import,path,os
From: https://www.cnblogs.com/bitterteaer/p/17581746.html

相关文章

  • 正点原子Ubuntu入门009---Ubuntu文件权限管理
    一、Ubuntu/Linux文件权限文件权限是指不同用户或用户组对不同文件所拥有的权限,文件权限分为三种:r:可读  w:可写  x:可执行  -rw-r--r--为一组文件权限其中第一位代表文件类型,后面9位分为三组,分别对应拥有者权限、拥有者所在组权限、其他用户权限文件类型: 普......
  • 转载:PageOffice在线打开office文件通过js调用vba可实现的功能
    pageoffice封装的js接口有限,某些比较复杂的设置用到的客户不多,所以没有提供直接的js方法,但是pageoffice提供了Document属性和RunMacro方法,可以调vba或直接运行宏指令实现比较小众的一些需求   Word相关功能1、给word表格中的单元格赋值document.getElementById("Page......
  • 5.5 读写文件
    1.加载和保存张量我们可以使用torch提供的函数torch.save以及torch.load对张量进行保存和加载。 torch.save的第一个参数是要保存的张量,第二个参数是要保存成为的文件名。注意,上面的代码中我们先创建张量x=[1,2,3,4],将其保存为文件x-file,此时x-file已存在。而我们再将新的x......
  • 从另一电脑复制下来的MYSQL的数据文件(包括FRM IBD)快速恢复到另一MYSQL服务器过程
    从另一电脑复制下来的MYSQL的数据文件(包括FRMIBD)快速恢复到另一MYSQL服务器过程:1.安装mysql最好相同的版本,安装Navicateformysql,连接相应的服务器2.安装mysql-utilities,地址:https://downloads.mysql.com/archives/utilities/以恢复td_gov_company_abnormal.frm为例:3.C......
  • 文件上传
    一、前端页面三要素1.表单项type="file";2.表单提交方式post;3.表单的enctype属性multipart/form-data二、服务端接收文件类:MultipartFile三、本地存储1.MultipartFile的方法(1)StringgetOriginalFilename();//获取原始文件名(2)voidtransferTo(Filedest);//将接收的......
  • python 指定位置创建文件夹
    如何在Python中指定位置创建文件夹介绍在Python编程中,创建文件夹是一个常见的任务。有时候我们需要在特定位置创建一个文件夹,以便存储和组织文件。本文将向刚入行的小白介绍如何使用Python在指定位置创建文件夹。整体流程下面是一个创建文件夹的示例流程,我们将通过一些简单的步......
  • python读取py文件
    Python读取py文件Python是一门功能强大的编程语言,可以用于开发各种类型的应用程序。在Python中,我们可以很方便地读取和操作文本文件。本文将介绍如何使用Python读取.py文件,并提供代码示例。为什么需要读取.py文件?在软件开发中,我们通常会将程序的逻辑代码保存在.py文件中。有时候......
  • python读取TXT文件第二行
    Python读取TXT文件第二行引言作为一名经验丰富的开发者,我很高兴能够帮助你解决问题。在本文中,我将向你解释如何使用Python读取TXT文件的第二行。我将提供一条清晰的步骤,以及每一步所需要的代码和对其含义的注释。问题背景在开始之前,让我们先来了解一下你的问题背景。你想要读取......
  • python动态加载py文件
    动态加载py文件的实现对于刚入行的小白来说,实现动态加载py文件可能是一个比较陌生的概念。不过不用担心,我会帮助你逐步了解和掌握这个过程。流程概述动态加载py文件的实现可以分为以下几个步骤:找到要加载的py文件的路径。动态加载py文件。调用加载的py文件中的函数或类。......
  • python的csv文件里用逗号分离数据
    使用Python分割CSV文件引言在数据处理的过程中,经常需要对CSV(逗号分隔值)文件进行处理。CSV文件是一种常见的用于存储表格数据的文件格式,其中数据以逗号分隔。本文将介绍如何使用Python来实现将CSV文件中的数据按照逗号进行分割的方法。方法概述下面是实现分割CSV文件的方法概述:......