服务端代码:
- 1、创建数据库连接对象
- 2、初始化数据库
- 3、声明一个上下文
- 4、挂载用户相关的路由,这里主要由:登录,注册,获取用户列表
- 5、启动服务
python">import mcrud
import api
import amauth
import env
import contextlibenv.load("../.env")
db = mcrud.new_env()amauth.data.init(db, is_init_role=True, is_init_auth=True)@contextlib.asynccontextmanager
async def lifespan(app):yield {"db": db}app = api.Api(routes=[api.resp.post("/auth/user/login", amauth.user.login),api.resp.post("/auth/user/register", amauth.user.register),api.resp.get("/auth/user", amauth.user.get_users),],lifespan=lifespan,
)if __name__ == '__main__':app.run()
测试代码:直接使用zdppy_req库发送一个GET请求即可。
python">import reqtarget_url = "http://127.0.0.1:8888/auth/user"
resp = req.get(target_url)
print(resp.json())
输出结果:
{'msg': 'success', 'status': True, 'code': 10000, 'data': [{'id': '1788923430050795520', 'username': 'zhangdapeng', 'real_name': None, 'mobile': None, 'email': None, 'avatar': None, 'active': 1, 'status': 0, 'add_time': '2024-05-10 13:25:55', 'update_time': '2024-05-10 13:25:55', 'login_time': None}]}
在输出结果中:
- code:状态码,是通用字段。一种唯一标识,通常能够直接定位本次请求的结果属于成功,或者某种具体的错误类型。
- msg:表示消息,是通用字段。如果成功了,则是success。如果失败了,则是具体的失败信息。
- status:表示状态,也是通用字段。如果为True,则表示本次请求是成功。如果为False,则表示本次请求是失败的。
- data:真正的返回结果
data内容如下:其中每个元素的内容如下
- id:用户ID
- username:用户名
- real_name:用户的真实名字
- mobile:手机号
- email:邮箱
- avatar:头像
- active:激活状态
- status:在线状态
- add_time:注册时间
- update_time:最近修改时间
- login_time:上次登录时间
[{'id': '1788923430050795520', 'username': 'zhangdapeng', 'real_name': None, 'mobile': None, 'email': None, 'avatar': None, 'active': 1, 'status': 0, 'add_time': '2024-05-10 13:25:55', 'update_time': '2024-05-10 13:25:55', 'login_time': None}]