news 2026/10/15 10:51:02

2-1-6-依赖库介绍安装与测试

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
2-1-6-依赖库介绍安装与测试

title: 第一个接口:控制器、蓝图、依赖注入与 requirements.txt
lecture: 2-1-6
chapter: 2
section: 1
series: AI Agent 全栈开发工程师学习笔记
tags: [Flask, 蓝图, injector, pipreqs]

第一个接口:控制器、蓝图、依赖注入与 requirements.txt

起点:立一个只会回 pong 的接口,但把它立在规范上

/ping → {"ping": "pong"}是这套后端里最没用的接口。它的价值全在"走完全程":请求进来 → 路由表命中 → 蓝图分发 → 控制器处理 → 返回 JSON。这条链路一旦跑通,后面每个新接口都只是往同样的三个位置各加几行。

顺便,这一步还会暴露一个真实问题:装完包之后pip freeze倒出来的依赖清单里,一大半项目根本没用到。

装两个包

pipinstallflask pipinstallinjector

装完在 PyCharm 的解释器页面能看到flask 3.0.2和它拖进来的Jinja2 / click / itsdangerous / werkzeug / blinker / MarkupSafe。这两个包就是整个骨架阶段的全部外部依赖。

控制器:app/internal/handler/app_handler.py

在internal/handler/下新建app_handler.py,定义AppHandler类(文档注释写"应用控制器"),里面一个ping方法,返回一个字典:

classAppHandler:"""应用控制器"""defping(self):return{"ping":"pong"}

返回字典这个动作本身就是响应。Flask 看到视图函数返回dict,会自动序列化成 JSON 并带上Content-Type: application/json,不需要手写jsonify。这是后面所有接口统一响应结构的起点。

导出控制器:app/internal/handler/__init__.py

from.app_handlerimportAppHandler __all__=["AppHandler"]

__all__是 Python 的魔术变量,一个字符串列表,声明这个模块对外导出哪些名字。配好之后,别的模块写from internal.handler import AppHandler就行,不用关心AppHandler到底躺在handler/下的哪个文件里。

这一步不是装饰。控制器文件会越来越多(account_handler.py、知识库控制器、工具控制器……),把导入路径收在包的__init__.py里,将来拆分或重命名文件时,改动只发生在一处。

路由:app/internal/router/router.py

路由的工作是把 URL 和控制器方法绑定。Flask 里这件事通过**蓝图(Blueprint)**做——蓝图是一组路由的集合,便于按功能模块管理,比如前台和后台用不同的 URL 前缀。

注册分三步:

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/15 10:50:32

企业微信存储空间优化与深度清理指南

1. 问题背景与核心痛点企业微信作为国内主流的企业级通讯工具,在日常办公中会产生大量缓存文件、聊天记录和临时数据。以我们公司为例,使用半年后客户端体积膨胀到12GB,导致C盘频繁报警。这些"隐形空间杀手"主要包括:聊…

作者头像 李华
网站建设 2026/10/15 10:50:19

随身WiFi插电脑没反应?先别怪机器,多半是驱动没装对

前排提醒:本文只讨论自有设备的连接与调试问题排查。驱动一律从对应平台官方或社区正规渠道获取,来路不明的驱动包别装。一、卡在第一步的,比你想的多 刷机教程看了一堆,热血沸腾插上数据线——电脑毫无反应。设备管理器翻了个底朝…

作者头像 李华
网站建设 2026/10/15 10:49:00

电气工程毕业设计中AI辅助应用与学术规范

1. 电气工程毕业设计中的AI辅助现状电气工程专业的毕业设计通常涉及电路设计、控制系统仿真、电力系统分析等核心内容。近年来,随着AI工具的普及,越来越多的学生开始尝试使用ChatGPT、DeepSeek等工具辅助完成设计报告、代码编写和理论分析部分。这种现象…

作者头像 李华
网站建设 2026/10/15 10:48:57

SpringBoot+Vue宠物寄养平台开发与部署实战

1. 项目概述与核心价值这个基于SpringBootVue技术栈的宠物寄养平台源码,是我在开发完三个商业级宠物服务系统后,专门为中小型宠物店和独立开发者整理的开箱即用解决方案。不同于市面上那些只有基础CRUD功能的demo项目,这套代码完整实现了宠物…

作者头像 李华
网站建设 2026/10/15 10:48:32

InfraVLA:用监控摄像头做导航,突破机器人编码器定位困局

很多做机器人的朋友都有个执念:定位不准?加编码器。导航漂了?再调编码器。这个思路在短距离、结构化地面上确实成立,但真放到写字楼、仓库这种场景里,光靠编码器堆定位,多半还是会在某个拐角处眼睁睁看着机…

作者头像 李华
网站建设 2026/10/15 10:48:20

遮挡行人重识别:高阶关系与拓扑建模突破全局特征局限

被遮挡的行人重识别(Occluded Person Re-Identification)这几年来一直是个硬骨头。我做了几年Re-ID相关的项目,初期接触的几套公开方法在干净场景下精度都不错,但一旦遇到行人被车、栏杆、背包或者广告牌挡住一部分,指…

作者头像 李华