在FastAPI中进行数据请求

今天讲一下如何在fastapi中进行数据请求,我们以模拟微信用户登录注册为例,逻辑主要为

1、确定逻辑

diff 复制代码
- 1、前端判断用户是否登录
- 2、后端如果用户没有注册,那么就进行注册,如果注册了,那么我们就让用户进行登录,以发送前端token
- 3、微信用户登录注册我们需要用户的唯一openid,那么这个时候就需要去通过微信的统一获取openid接口来进行获取openid,这个大家可以自行去进行申请微信小程序来进行模拟,个人注册一个小程序就行了,这里不再赘述。

2、环境搭建

markdown 复制代码
    1、PyCharm
    2、python3.10
    3、fastAPI
    

之前我们有讲过如何搭建一个最简单的基础服务,这里不再赘述,大家可以自行去观看我之前的文章,这里我们直接上代码

这里的WXUser类是在数据库中创建的模型类

python 复制代码
class WxUser(Model):
    id = fields.IntField(pk=True)
    registrationTime = fields.DatetimeField(auto_now_add=True)
    openid = fields.CharField(max_length=300, unique=True) #存储的用户openid

这里是模拟的微信登录接口,然后在这里我们导入了一个httpx的包用来进行网络请求,这里需要对httpx进行一下封装,不然代码量感觉有点多,当然也可以不去封装。剩余的封装函数和我之前封装的形式一致,都是用来处理数据格式的,以及封装好的鉴权,看过我之前帖子的话可以直接复制下来用,这里也同时对数据库中进行了查询判断,如果存在就返回token 不存在就写入在进行返回。

3、fastapi初体验

juejin.cn/post/731224...

相关推荐
wuxuanok11 分钟前
Go——Swagger API文档访问500
开发语言·后端·golang
用户214118326360237 分钟前
白嫖Google Antigravity!Claude Opus 4.5免费用,告别token焦虑
后端
爬山算法1 小时前
Hibernate(15)Hibernate中如何定义一个实体的主键?
java·后端·hibernate
用户26851612107562 小时前
常见的 Git 分支命名策略和实践
后端
程序员小假2 小时前
我们来说一下 MySQL 的慢查询日志
java·后端
南囝coding2 小时前
《独立开发者精选工具》第 025 期
前端·后端
To Be Clean Coder3 小时前
【Spring源码】从源码倒看Spring用法(二)
java·后端·spring
想用offer打牌3 小时前
你真的懂Thread.currentThread().interrupt()吗?
java·后端·架构
程序员NEO4 小时前
LangChain4j 工具调用实战
后端