zoukankan      html  css  js  c++  java
  • 1FastAPI新建服务

    创建基础服务

    from fastapi import FastAPI
    from pydantic import BaseModel
    
    app = FastAPI()  # 实例化app
    
    
    # 创建接口函数
    @app.get('/')
    def hellow_world():
        return {'hello_world'}
    
    
    

    请求传参

    
      # 创建校验类用来校验传参
    class Hellow(BaseModel):
        # 必填字符串类型
        hallow: str
        # 选填布尔类型,有默认值
        world: bool = None
          
    
    # 获取路径传参
    @app.get('/{parameter}')
    # 所有的查询参数(/?queryParameter=dd)
    def hellow_world(parameter: str, queryParameter: str = None):
        return {'路径参数': parameter, '查询参数': queryParameter}
    
    
    # 获取路径传参
    @app.put('/{parameter}')
    # 所有的查询参数(/?queryParameter=dd)
    def hellow_world(parameter: str, queryParameter: Hellow):
        return {'路径参数': parameter, '查询参数': queryParameter.hallow}
    
      
      
    # 如果想使用异步api在函数前添加async:
    # 获取路径传参
    @app.get('/{parameter}')
    # 所有的查询参数(/?queryParameter=dd)
    async def hellow_world(parameter: str, queryParameter: str = None):
        return {'路径参数': parameter, '查询参数': queryParameter}
    

    交互文档

    http://127.0.0.1:8000/docs

    http://127.0.0.1:8000/redoc

    启动服务

    命令行启动

    
    # 启动命令:uvicorn 文件名:实例名
    # 修改文件自动重启命令
    # 启动命令:uvicorn hello_world:app --reload
    

    配置pycharm启动服务

    image-20211204222839030

    脚本文件启动

    # 导入 uvicorn
    import uvicorn
    """
    app 程序
    """
    if __name__ == '__main__':
      """
      reload:修改文件自动重启。
      debug:debug模式。
      workers:设置进程数量。
      """
        uvicorn.run('run:app', host='0.0.0.0', port=8000, reload=True, debug=True, workers=1)
    
    
  • 相关阅读:
    ubuntu下配置django+apache+mysql+mod_python+Python
    Makefile 学习
    一个查重算法的多种实现思路
    MongoDB基础
    基于ASP.NET MVC 3的企业应用项目总结
    CruiseControl.Net持续集成平台搭建总结
    Cnblogs Start
    JavaScript中的this
    Entity Framework 4.0 的一个bug :DefaultValue问题
    .Net平台下的B/S开发框架
  • 原文地址:https://www.cnblogs.com/oysq/p/15650925.html
Copyright © 2011-2022 走看看