FaskAPI Web学习

FaskAPI Web学习

个人笔记使用,感谢阅读!


# -*- ecoding: utf-8 -*-
# @Author: SuperLong
# @Email: miu_zxl@163.com
# @Time: 2024/9/7 11:37
from enum import Enum
from typing import Optional

from fastapi import FastAPI
import uvicorn
app = FastAPI()

@app.get('/user')
async def hello_world(page_index:int,page_size:Optional[int]=12):
    return {'message':f'page_index:{page_index} page_size:{page_size}'}


@app.get('/user/{user_id}/friends')
async def get_user_friends(user_id:int,page_id:int,page_size:Optional[int]=16):
    return {'message':f'user_id:{user_id} page_id:{page_id} page_size:{page_size}'}


if __name__ == '__main__':
    uvicorn.run("01-hello_world:app",reload=True)


# todo 启用方式
# 方式1:指令启动
# uvicorn main:app --reload
# 方式2:代码启动
# import uvicorn
# uvicorn.run("main:app",reload=True)

# todo 传入路径参数
# 路由顺序:小范围->大范围
# @app.get('/user/{user_id}')
# async def hello_world(user_id:int):
#     return {'message':f'hello world!:{user_id}'}

# todo 传入可选参数
# from enum import Enum
# class Person(str,Enum):
#     man = "man"
#     woman = "woman"
# @app.get('/person/{gender}')
# async def hello_person(gender:Person):
#     return {'message':f'this is a {gender.value}'}

# todo 查询参数
# @app.get('/user')
# async def hello_world(page_index:int,page_size:int):
#     return {'message':f'page_index:{page_index} page_size:{page_size}'}
# 在前端只需要按条件输入 http://127.0.0.1:8000/user?page_index=1&page_size=45 即可

# 也可默认参数
# from typing import Optional
# @app.get('/user')
# async def hello_world(page_index:int,page_size:Optional[int]=12):
#     return {'message':f'page_index:{page_index} page_size:{page_size}'}

# todo 同时传入路径和查询参数
# 在前端输入:http://127.0.0.1:8000/user/12/friends?page_id=45&page_size=16
# @app.get('/user/{user_id}/friends')
# async def get_user_friends(user_id:int,page_id:int,page_size:Optional[int]=16):
#     return {'message':f'user_id:{user_id} page_id:{page_id} page_size:{page_size}'}

目前专注于NLP、大模型和前后端的技术学习和分享

感谢大家的关注与支持!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值