写在FastAPI之旅之前

FastAPI与Tortoise-ORM开发的神奇之旅 title: FastAPI与Tortoise-ORM开发的神奇之旅 date: 2025/05/05 00:15:48 updated: 2025/05/05 00:15:48 author: cmdragon excerpt: FastAPI与Tortoise-ORM结合实现全链路开发,涵盖环境配置、数据模型定义、Pydantic模式设计及API端点实现。文章模型包含软删除功能,通过字段实现逻辑删除。API支持创建、分页查询、条件更新和软删除操作,确保数据安全与完整性。分页机制通过和实现,条件更新使用 阅读详情

在过去的十年里,我深入参与了Java、PHP和Golang的开发工作。从最初使用Java的原生servlet进行web开发,到后来拥抱Spring MVC和Spring Boot,我见证了框架的演进和开发效率的不断提升。然而,当我转而使用PHP的Laravel和Golang的beego以及Gin框架时,我发现了这些框架的底层思想与Spring MVC如出一辙。

回想起使用Spring MVC的日子,就像是从自动挡的车换到手动挡的感觉。繁琐的配置过程确实会让一部分人望而却步。然而,不可否认的是,Spring Boot只是在Spring MVC的基础上进行了封装,其核心的MVC开发思想、依赖注入、切面编程、拦截器、中间件等在主流框架中都有它的影子。

当我在实战开发中使用其他框架时,我总会借鉴最初学习的Spring的思想。这种启发式的思维方式使我能够快速适应各种不同的编程语言和框架。

随着Python的崛起,我也加入了Python的阵营。尽管Python被认为是最容易入门的编程语言,但要真正精通它却需要长时间的磨练。Python涵盖了多线程编程、线程池思想、网络编程、socket、文件读写、异常处理、数据结构等众多知识领域。Python的弱类型也是被诟病的一个点。对于习惯了Java和Golang的我来说,我更喜欢在写代码时直接显示错误,而不是运行后才发现错误。然而,Python 3.7开始支持类型提示,这似乎有向Java和C等强类型语言靠拢的趋势。

没有完美的编程语言,只有最适合你的编程语言。如果你进行游戏开发,你应该选择C++;如果你进行大型web项目开发,你也许应该选择Java;但如果你想快速进入编程的世界,Python可能是个不错的选择。它的学习曲线不会像Java和C那样陡峭。

既然你已经决定使用Python,那就不要再犹豫了。坚定你的目标,下定决心。现在,让我们一起开启这段美妙的旅程吧!

FastAPI安全认证:从密码到令牌的魔法之旅 在FastAPI中实现OAuth2密码流程的认证机制。通过创建令牌端点,用户可以使用用户名和密码获取JWT访问令牌。代码示例展示了如何使用 CryptContext 进行密码哈希处理,生成和验证JWT令牌,并实现安全路由保护。此外,还提供了JWT令牌的结构解析、常见报错解决方案以及安全增强建议,如使用HTTPS传输令牌和从环境变量读取密钥。最后,通过课后Quiz巩固了关键概念。 阅读详情

相关推荐

fastapi教程(一):初识 fastapi

FastAPI 是一个用于构建 API 的现代、快速(高性能)的 web 框架,使用 Python 并基于标准的 Python 类型提示。

dangfulin的博客 4074

推荐文章:加速FastAPI服务优化之旅 —— fastapi_profiler深度解析

推荐文章:加速FastAPI服务优化之旅 —— fastapi_profiler深度解析 在追求极致性能的现代软件开发中,每一个毫秒都至关重要。今天,我们将聚焦一个专为FastAPI设计的性能监控利器 —— fastapi_profiler,这是一款旨在帮助开发者深入洞察服务内部运行效率的中间件,让你的FastAPI应用如虎添翼。 项目介绍 fastapi_profiler 是一款巧妙结合了 jo...

gitblog_01110的博客 635

FastApi教程

HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于万维网(WWW:World Wide Web )服务器与本地浏览器之间传输超文本的传送协议。HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。

小石潭记丶 1563

【Python】FastAPI入门

WSGI,(WEB SERVER GATEWAY INTERFACE),Web服务器网关接口,是一种Web服务器网关接口,它是一个Web服务器(如Nginx,uWSGI等服务器)与Web应用(如Flask框架写的程序)通信的一种规范。当前运行在WSGI协议之上的Web框架有Bottle,Flask,Django。异步网关协议接口() ,一个介于网络协议服务和Python应用之间的标准接口,能够处理多种通用的协议类型,包括HTTP,HTTP2和WebSocket。WSGI和ASGI的区别。

专注上位机开发、机器视觉、机器学习、嵌入式软硬件开发 2万+

FastAPI入门

main.pytodos = ["写博客", "看电影", "玩游戏"]"""处理用户发送过来的 todolist 数据"""在这里我说一下为什么要将状态码设置为302,如果你不设置这个status_code,浏览器发送给后端的请求状态码为307,因为307的状态码是不能从post请求跳转到get请求,原因是post请求如果要跳转到get请求不通用,如果想进行跳转,需要将307更改为302。

vbgesab的博客 2929

『FastAPI』路由分发

本文可在公众号「德育处主任」免费阅读上一讲介绍了FastAPI“请求与响应”的基础用法。但当你的应用逐渐变大时,把所有的路由都写在同一个文件中会使代码变得混乱、难以维护。通过路由分发,你可以将应用的不同功能模块拆分成多个文件或模块,方便管理和组织。比如,一个电商平台有用户模块,有订单模块,有商品模块等等,将各个模块分开开发维护肯定比写在同一个文件中更有优势。在FastAPI中,借助APIRouter可以实现路由分发功能。其本质是向路由中添加子路由。

weixin_39415598的博客 839

FastAPI使用教程

二、模板 创建 main.py 文件,内容如下 三、启动命令 ps:127.0.0.1:8000 127.0.0.1:8000/docs【Swagger UI 提供的api文档】 127.0.0.1:8000/redoc【ReDoc 提供的api文档】 代码 调用方法 2.指定数据类型的路径参数 代码 调用方法 3.枚举路径参数 代码 调用方法 4.匹配所有路径 代码 调用方法 5.普通传参 代码 调用方法 6.必备参数 代码 调用....................................

什么都干的派森 1万+

FastAPI系列教程18:fastapi utils,改造你的FastAPI程序

本节我们介绍fastapi utils,这是一个细致的实用工具库,它可以帮助我们使用OOP结构来组织路由、服务及数据库模型;同时它也针对sqlalchemy的使用进行了扩展;最后它还提供了一些贴心的小功能如任务调度工具、计时中间件等等。

GeekABC 1459

【FastAPI 01】FastAPI 系列文章正式开写了

大家好,我是Kuls。本系列文章的目的就是能够通俗易懂的讲述FastAPI这个框架,让每个人学习这门框架都没有什么门槛。这个系列想了很久到底用什么形式来呈现,期间也发了投票给各位读者。大家...

Kuls 1355

DINOv3实战指南:如何利用零样本视觉模型革新工业质检

本文详细介绍了如何利用DINOv3零样本视觉模型革新工业质检流程。通过无需标注数据的自监督学习技术,DINOv3能快速部署高精度检测系统,显著降低成本和提升效率。文章涵盖模型选型、数据准备、实时检测优化及典型行业解决方案,为工业质检提供革命性AI实践指南。

ansible6ops的博客 124

【SLAM】探索explore_lite在移动机器人自主建图中的高效边界检测策略

本文深入解析了explore_lite在移动机器人自主建图中的应用,重点探讨了其高效的贪婪边界检测策略。该工具包专为资源受限平台设计,通过直接利用SLAM生成的地图信息,以极低的计算开销实现快速、稳定的未知区域探索,并与move_base导航框架无缝协作,是轻量级机器人自主探索的优选方案。

purple的博客 1067

使用fastapi写一个http接口

文章目录一,使用工具:FastAPI和uvicorn二,get接口三,post接口 一,使用工具:FastAPI和uvicorn 通常我们写一个简单的http接口时常用flask,这次用点不一样的。 FastAPI是一个快速(高性能)的Web框架,需Python 3.6以上,安装方法:pip install fastapi uvicorn是一个基于asyncio开发的一个轻量级高效的web服务器框架。需python3.5.3以上,安装方法:pip install uvicorn 二,get接口 # !/us

蓝并瓦的博客 4523

文献阅读笔记:量子微波测量技术综述

量子微波测量技术研究进展:量子微波测量技术利用里德堡原子与微波电场的相干相互作用,突破了传统测量方法的物理限制。该技术基于电磁诱导透明效应和里德堡原子能级跃迁原理,通过激光激发原子并监测光谱变化来测量微波电场强度。相比传统方法,量子微波测量具有超高灵敏度(理论极限可达nV/cm)、宽动态范围(超过100dB)、小型化等显著优势,且测量结果可直接溯源至普朗克常数。典型实验系统包括光源、原子气室和探测器,采用光谱法、干涉法等多种测量方法。近年来,该技术在基础研究和应用方面取得重要进展,展现出在通信、雷达、计量等

Grow into a more wonderful you 989

打造坚如磐石的Python API:FastAPI之旅

???? 打造坚如磐石的Python API:FastAPI之旅 在当今的数字化时代,强大的API架构是每个软件系统的心脏。本篇将带你深入探索如何利用Python和FastAPI构建不仅健壮而且响应迅速的API服务。我们将细致探讨如何集成外部服务、持续集成的重要性、自动化测试以及如何确保最佳性能,通过异步调用来提升效率,并学习如何设置电路断路器来增强系统的韧性。 项目概览 “打造API的坚固之...

gitblog_00540的博客 795

华为OD机试真题 新系统2026-04-15 Python&JS 实现【失灵的键盘】

有一个键盘有2个按键失灵了,按下这些键时会连续输出其他键对应的字符两次。具体如下: 1. 按下j键一次,屏幕上显示uu(两个连续的u);  按下b键一次,屏幕上显示t(两个连续的t) 2. u键和t键是好的,按下u键一次时,屏幕只会显示一次u(正常按键);按下t键一次时,屏幕只会显示一次t(正常按键) 3. 假定屏幕上连续显示两个t一定是按了一次b键,而不是两次t键;假定按键t之后不会紧接着按键b,即tttt转义为两个b,而不可能是tb

MISAYAONE的博客 523

CoppeliaSim和Python进行无人机联合仿真

CopeeliaSim和Python进行无人机轨迹跟踪联合仿真。首先建立起CoppeliaSim和Python的连接,其次在Python中生成轨迹,CoppeliaSim仿真环境中的无人机进行跟踪,并绘制出轨迹曲线,有每一步详细的教学。

加斯顿工程师的博客 988

探秘FastAPI-JWT:简化你的Web身份验证之旅

探秘FastAPI-JWT:简化你的Web身份验证之旅 在当今这个数字化世界中,安全且高效的用户认证成为了任何web应用的核心要素。对于基于Python的快速开发框架FastAPI的爱好者来说,一个名为fastapi-jwt的开源库正日益成为处理JWT(JSON Web Tokens)认证的理想选择。接下来,让我们一探究竟。 项目介绍 fastapi-jwt是一个专为FastAPI设计的轻量级扩展...

gitblog_00625的博客 612

ZYNQ 7020 之 FPGA知识点重塑笔记一——串口通信

通信方式一般分为串行通信和并行通信。并行通信是指多比特数据同时通过并行线进行传送。这种传输方式通信线多、成本高,故不宜进行远距离通信,通常传输距离小于 30 米。串行通信是指数据在一条数据线上,一比特接一比特地按顺序传送的方式。这种运输方式通常节省传输线,大大降低使用成本,但数据传送速度慢。综上可知,串行通信主要应用于长距离、低速率的通信场合。本次实验我们主要讲解下串行通信。串行通信一般有2种通信方式:同步串行通信和异步串行通信。同步串行通信。

m0_51430584的博客 3097

FastAPI生态:最佳实践、FastAPI-MCP、TurboAPI、FastApiAdmin、Aegis Stack

FastAPI生态:最佳实践、FastAPI-MCP、FastApiAdmin、Aegis Stack

lonelymanontheway的博客 874

YOLO系列算法改进 | 自研篇 | C3k2融合Circulant Attention注意力模块 | 给局部特征提取器装上了全局动态卷积核,兼顾效率、精度与泛化能力!| AAAI 2026

YOLO系列算法改进 | 自研篇 | C3k2融合Circulant Attention注意力模块 | 给局部特征提取器装上了全局动态卷积核,兼顾效率、精度与泛化能力!| AAAI 2026 (以YOLO26最新目标检测模型为基础,融合C3k2_Circulant创新模块改进Backbone)

2502_91881744的博客 242

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Voyager 拡張の入力欄自動非表示(Input Collapse)完全ガイド:Gemini の入力欄を折りたたんで読書スペースを最大化する

入力欄が空のときに自動的にカプセル型ボタンへ折りたたみ、クリックやショートカットで瞬時に展開できる Voyager の「入力欄の自動非表示」機能について解説します。本記事では、設定パネルでの有効化手順、毎日の操作フロー、折りたたみが無効化される例外ページの条件、そして MutationObserver と CSS 注入による実装の裏側まで、[公式ガイド](https://link.gitcode.

gitblog_00323的博客 665

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

用FastAPI从0到1写一个真正可用的接口服务

这篇文章介绍了如何使用FastAPI从零开始构建一个完整的图书管理API服务。主要内容包括: FastAPI的核心优势:自动参数校验、文档生成和清晰的接口定义 搭建最小运行环境并创建基础API示例 定义数据模型时使用Pydantic进行验证和约束 实现完整的CRUD功能: 查询图书列表(支持分类筛选) 按ID查询单本图书 新增图书 更新图书信息 删除图书 关键实现细节: 使用Path/Query进行参数校验 通过response_model规范返回结构 合理设置HTTP状态码 明确的错误处理机制 文章提供了

像风一样自由的博客 431

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

上一篇: 如何使用fastapi进行自定义doc文档
下一篇: FastAPI的安装
micro_cloud_fly
博客等级 码龄12年 321粉丝 222原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

micro_cloud_fly

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值