zoukankan      html  css  js  c++  java
  • python学习笔记(28)Mock开发---fastapi模块

    fastapi模块功能类型flask模块,可进行更加简便的接口开发 

    使用前需要安装fastapi和使用uvicorn模块来运行,pip install fastapi    pip install uvicorn

    fastapi可自动生成接口文档,接口文档上也可以进行接口测试,地址为  ip:port/docs 

    import fastapi
    import uvicorn
    server = fastapi.FastAPI()#实例化一个服务
    
    #1、get请求无入参的方式
    @server.get('/login')
    def login():
        data = {"error":0,"msg":'登录成功'}
        return data
    
    #2、get请求有入参的方式
    @server.get('/index')
    def index(id:int,sex:str):#入参需要指定数据类型
        if sex == 'nan':
            data = {'id':id,'sex':'男'}
        else:
            data = {'id':id,'sex':'女'}
        return data
    
    #3、post请求入参为查询参数,即postman中的params参数
    @server.post('/order')
    def order(type:str):
        if type == 'success':
            data = {'id':1,'order_amount':10000,'type':type}
        else:
            data = {'id':id,'order_amount':0}
        return data
    
    # 4、post请求入参为Body参数,即postman中的body-formdata参数
    #后期使用时在补充吧............
    
    #5、post请求入参为json方式
    from pydantic import BaseModel
    class User(BaseModel):
        username:str
        password:str
        phone:str
    @server.post('/user')
    def user(u:User):
        print(u.username)
        print(u.password)
        print(u.phone)
        data = {'code':0,'username':u.username}
        return data
    
    #ip:port/docs   可查看生成的接口文档,文档上可以跑接口
    if __name__ == '__main__':#必须通过main函数来启动服务,否则会无法启动服务
    
        uvicorn.run('fastapitest:server',debug=True,port=9000,host='0.0.0.0')
        #通过uvicorn.run()启动服务,第一个参数格式:  启动服务的文件名:实例化的服务名,debug=True表示修改后文件后自动启动服务
    

      

  • 相关阅读:
    微信小程序 单选按钮 最佳
    微信小程序 单选按钮的实现
    微信小程序 单选框实现
    Java Code To Create Pyramid and Pattern
    Java language
    npm Err! Unexpected end of JSON input while parsing near
    Node.js Express FrameWork Tutorial
    Higher-Order Function Examples
    Create First HTTP Web Server in Node.js: Complete Tutorial
    Node.js NPM Tutorial: Create, Publish, Extend & Manage
  • 原文地址:https://www.cnblogs.com/bugoobird/p/13124092.html
Copyright © 2011-2022 走看看