在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...

相关推荐
回家路上绕了弯13 小时前
大表优化实战指南:从千万到亿级数据的性能蜕变
分布式·后端
Home13 小时前
23 种设计模式--桥接(Bridge)模式(结构型模式二)
java·后端
编程修仙13 小时前
第九篇 Spring中的代理思想
java·后端·spring
aiopencode13 小时前
iOS CPU 使用率深度分析,多工具协同定位高占用瓶颈的工程化方法
后端
I'm Jie13 小时前
告别重复编码!SpringBoot 字段变更(新旧值)日志工具类的规范化设计与优雅实现
java·spring boot·后端
开心猴爷14 小时前
Bundle Id 创建与管理的工程化方法,一次团队多项目协作中的流程重构
后端
databook14 小时前
用样本猜总体的秘密武器,4大抽样分布总结
后端·python·数据分析
小坏讲微服务14 小时前
SpringBoot4.0整合Scala完整使用
java·开发语言·spring boot·后端·scala·mybatis
泉城老铁14 小时前
windows服务器mysql数据库备份脚本
java·后端·mysql
却尘14 小时前
用 25 个概念彻底看懂SQL多维分析的底层逻辑
后端·sql·mysql