使用zdppy_amauth开发获取用户列表接口

embedded/2024/11/14 21:01:17/

服务端代码:

  • 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}]

http://www.ppmy.cn/embedded/39199.html

相关文章

Adobe Premiere Pro安装

一、安装包下载 链接:https://pan.baidu.com/s/1aYqTSQQutDguKYZE-yNHiw?pwd72l8 提取码:72l8 二、安装步骤 1.鼠标右击【Pr2024(64bit)】压缩包(win11及以上系统需先点击“显示更多选项”)【解压到 Pr2024(64bit)】。 2.打开…

python怎么卸载pip

pip是常用的python包管理工具,可以先安装pip,然后利用pip安装requests等包。 卸载pip很简单,只需要一句命令即可: sudo pip uninstall pip 然后会提示你是否确认卸载,输入“y”,按回车键即可。 卸载完成之…

多台服务器共享python虚拟环境和Linux安装python虚拟环境

文章目录 一、新增服务器环境搭建1. python3 环境搭建2.必要软件安装3. 目录挂载1 ./toolchain 挂载:2. /virtualenvs挂载: 4. 安装驱动和sdk 二、多台服务器共享python虚拟环境 一、新增服务器环境搭建 1. python3 环境搭建 16.04 系统默认 python3.5&…

2024中国(重庆)青少年儿童创新创意展览会8月举办

2024中国(重庆)青少年儿童创新创意展览会8月举办 邀请函 主办单位: 中国航空学会 重庆市南岸区人民政府 招商执行单位: 重庆港华展览有限公司 展会背景: 2024中国航空科普大会暨第八届全国青少年无人机大赛在重庆举办,同时…

RISCV 外部GCC 工具链安装@FreeBSD15

在交叉编译的时候,可以使用FreeBSD15默认的工具链:LLVM 也可以使用GCC工具链,GCC可以使用现成pkg包安装,也可以编译安装。 LLVM的特点是高移植性和高效,但学习成本高。GCC的特点是成熟稳定,但优化能力有限…

[uniapp] 配置ts类型声明

我想引进图片,但是报错 声明一下就行 TypeScript 支持 | uni-app官网 创建tsconfig.json文件,复制官网的配置 然后在随便一个目录下写一个随便名字的.d.ts文件 例如这样 保存就行 因为ts是默认扫描全部的,所以要按照官网的写法 把不必要的排除掉就行,免得浪费性能

98、技巧-颜色分类

思路 这道题的思路是什么,首先典型荷兰国旗问题: 该问题的关键在于我们要将所有的0放到数组的前部,所有的1放在中间,所有的2放在后部。这可以通过使用两个指针,一个指向数组开头的“0”的最后一个位置,另…

Java入门基础学习笔记13——数据类型

数据类型的分类: 基本数据类型 引用数据类型 基本数据类型:4大类8种类型: 定义整形用int,再大的数用long。 package cn.ensource.variable;public class VariableDemo2 {public static void main(String[] args) {//目标&#x…