FastAPI(42)- Static Files 静态资源

简介: FastAPI(42)- Static Files 静态资源

安装 aiofiles


pip install aiofiles

 

个人感想


现在都是前后端分离,感觉在 FastAPI 应用程序中直接使用静态资源的可能性不大,只做了解(也不难

 

使用 StaticFiles 访问静态资源


from fastapi import FastAPI
from fastapi.staticfiles import StaticFiles
from fastapi.responses import HTMLResponse
app = FastAPI()
# 挂载
app.mount("/static", StaticFiles(directory="static"), name="static")
@app.get("/")
def get_login():
    # 返回一段 HTML 代码,导入 js 文件的路径以 /static 为根路径
    html = """
        <!DOCTYPE html>
        <html lang="en">
        <head>
            <meta charset="UTF-8">
            <title>Title</title>
            <script src="/static/jquery.min.js"></script>
        </head>
        <body>
            12345
        </body>
        </html>
    """
    return HTMLResponse(html)


什么是 mount

  • “挂载”意味着在特定路径中添加一个完整的“独立”应用程序,然后负责处理所有子路径
  • 这与使用 APIRouter 不同,因为挂载的应用程序是完全独立的
  • 主应用程序中的 OpenAPI 和文档不会包含来自挂载的应用程序的任何内容

 

解析上面的代码

  • 第一个 /static 指的是这个“子应用程序”将被“安装”到的子路径,因此,任何以 /static 开头的路径都将由它处理
  • directory="static" 是指包含静态文件的目录的名称,本地目录
  • name="static"  赋予它一个可以被 FastAPI 内部使用的名称,这里暂时没用到
  • 所有这些参数都可以与 static 不同

 

相关文章
|
前端开发 JavaScript 数据格式
图片URL转file文件(前端+后端node.js)
图片URL转file文件(前端+后端node.js)
|
存储 API Python
FastAPI(24)- 详解 File,上传文件
FastAPI(24)- 详解 File,上传文件
987 0
FastAPI(24)- 详解 File,上传文件
|
4天前
|
前端开发 JavaScript Java
从零手写实现 tomcat-10-static resource 静态资源文件
该文档记录了作者为理解Tomcat精髓,动手从零开始实现一个简化版Tomcat的过程。系列教程包括对web.xml的解析、基础的Socket实现、请求响应抽象、Servlet支持、线程池处理、WAR包解析及与SpringBoot集成等。文章以静态资源处理为例,介绍了如何接收HTTP请求,查找并返回文件内容,以及处理失败情况。代码示例展示了静态资源的分发逻辑。项目已开源,可在GitHub上访问[https://github.com/houbb/minicat](https://github.com/houbb/minicat)。
|
4天前
|
存储 前端开发 JavaScript
前端base64转file文件方法
前端base64转file文件方法
79 0
|
4天前
|
应用服务中间件 nginx
Angular打包构建项目服务器运行runtime.js、polyfills.js、vendor.js报错net::ERR_ABORTED 404 (Not Found),build修改为相对路径./
Angular打包构建项目服务器运行runtime.js、polyfills.js、vendor.js报错net::ERR_ABORTED 404 (Not Found),build修改为相对路径./
|
JavaScript 前端开发 API
使用ort.js的create方法加载onnx模型报错:Fetch API cannot load file…… URL scheme “file“ is not supported.
使用ort.js的create方法加载onnx模型报错:Fetch API cannot load file…… URL scheme “file“ is not supported.
459 0
使用ort.js的create方法加载onnx模型报错:Fetch API cannot load file…… URL scheme “file“ is not supported.
|
Java API
java Files和Paths的使用详解 附有使用demo
java Files和Paths的使用详解 附有使用demo
274 0
|
JavaScript
webpack基础篇(九):资源解析--使用url-loader
webpack基础篇(九):资源解析--使用url-loader
92 0
webpack基础篇(九):资源解析--使用url-loader
|
JavaScript 区块链
项目性能优化之用url-loader把小图片转base64,大图片使用image-webpack-loader压缩
项目性能优化之用url-loader把小图片转base64,大图片使用image-webpack-loader压缩
261 0
|
Java 应用服务中间件 API
Java Web Servlet (Part D)- File Upload & Download
Java Web Servlet (Part D)- File Upload & Download
Java Web Servlet (Part D)- File Upload & Download