• fastapi 基本介绍+使用


    FastAPI是一个基于Python 3.6+的现代、快速(高性能)的web框架,它使用Starlette作为其底层Web框架。FastAPI有很好的文档和丰富的功能,包括自动为路由生成API文档、查询参数验证、依赖注入、WebSocket等等。

    以下是一个FastAPI的基本使用示例:

    from fastapi import FastAPI
    import uvicorn
    
    app = FastAPI()
    @app.get("/")
    def read_root():
        return {"Hello": "World"}
    @app.get("/items/{item_id}")
    def read_item(item_id: int, q: str = Query(None)):
        return {"item_id": item_id, "q": q}
    
    if __name__ == '__main__':
        uvicorn.run("main:app", host="0.0.0.0", port=8080, reload=False, access_log=False, workers=4)
     
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    在这个例子中,我们创建了一个FastAPI应用,然后定义了两个路由。第一个是GET /,这个路由会返回一个简单的字典。第二个是GET /items/{item_id},这个路由会返回一个包含item_id和q的字典,其中item_id是路径参数,q是查询参数(它是可选的)。

    FastAPI的另一个重要特性是它可以自动生成API文档。如果你在应用中使用了类注解,FastAPI就可以根据这些注解生成可查阅的API文档。这对于API开发者和使用者来说都是非常方便的。

    FastAPI还支持异步编程,因为它基于Starlette,而Starlette是异步的。这意味着你可以使用async def来定义你的路由处理函数,并充分利用Python的异步I/O特性来提高性能。

    FastAPI还有许多其他功能,包括依赖注入、认证、数据库集成等等。更多详细信息可以查看FastAPI的官方文档。

    
    
    
    • 1
    • 2
  • 相关阅读:
    【三维目标检测】SASSD(一)
    RabbitMQ之延迟队列解读
    【无标题】近几年攻防演练攻击队典型突破的例子
    Go定时器使用
    Python:功能强大的eval函数
    h5页面使用html2canvas实现分享海报
    技术干货 | 数据处理好难?来看MindSpore提供的解决思路!
    [Java安全]—Tomcat Servlet内存马
    「C系列」C 文件读写
    Qt Quick-PySide2使用qrc文件
  • 原文地址:https://blog.csdn.net/qq_43000917/article/details/133079539