什么是「依赖注入」
What is "Dependency Injection"
编程中的「依赖注入」是声明代码(本文中为路径操作函数 )运行所需的,或要使用的「依赖」的一种方式。
然后,由系统(本文中为 FastAPI)负责执行任意需要的逻辑,为代码提供这些依赖(「注入」依赖项)。
依赖注入常用于以下场景:
- 共享业务逻辑(复用相同的代码逻辑)
- 共享数据库连接
- 实现安全、验证、角色权限等……
上述场景均可以使用依赖注入,将代码重复最小化。
"Dependency Injection" means, in programming, that there is a way for your code (in this case, your path operation functions) to declare things that it requires to work and use: "dependencies".
And then, that system (in this case FastAPI) will take care of doing whatever is needed to provide your code with those needed dependencies ("inject" the dependencies).
This is very useful when you need to:
- Have shared logic (the same code logic again and again).
- Share database connections.
- Enforce security, authentication, role requirements, etc.
- And many other things...
All these, while minimizing code repetition.

之前我曾安利过 PasteImage 这个插件,用 VSCode 写博客/文档的时候,用它可以很快捷地在md文档中插入图片。
受某个友人影响,我也开始尝试 拥抱 webp了,近期的文章内的图片都已经压缩成了 webp 格式。但是 PasteImage 却不支持 webp 格式,于是我又想办法整出了今天这个解决方案,实现完全自动化的 压缩+插入图片。

前言
在 2022 年 8 月份,我向云游君的 hexo 主题 hexo-theme-yun 提 issue 的时候,他向我提到了 valaxy 这个由他开发的静态博客框架。当时 valaxy 十分先进的技术栈和一些优良特性一下就吸引了我,但是由于我已经使用 hexo 写了很多文章,且 valaxy 也没有迁移文档/工具,所以那时我并没有迁移。
时隔半年,我再去看 valaxy 的时候,它已经基本可用了,文档虽然还是不完整,但是够用。于是我决定将我的 hexo 博客迁移至 valaxy。hexo 这贼船越早下越好
前言
为了激发群友们水群的积极性, 为了学习和应用 python 知识,我最近在开发一个 telegram 的 bot,所以写这篇文章以记录和分享
在这篇文章中,将使用 Python-Telegram-Bot 最新版库,基于 Python 的新版异步特性与 Telegram 友好开放的 API,开发一个兼顾实用性和趣味的 bot ,并使用 Docker 在任何地方部署 bot
我写的 bot 的 GitHub 仓库: kmua-bot,欢迎大佬批评。
本文不是从零开始的教程,阅读本文前,你需要具有一点点(真的很少一点)的 python 或其他语言编程的基础。
最近openai整的ChatGPT有点小火,看了官方和民间的一些截图之后,感觉这东西确实有点意思,所以就想办法注册了个号来体验体验。