Strapi 是一款基于 Node.js 的开源无头内容管理系统(Headless CMS),专注为开发者提供灵活、高效的后端内容管理和 API 服务。
- 无头架构:专注后端内容管理,不绑定前端技术,通过 REST/GraphQL API 将内容传输至网站、App、物联网设备等任意终端。
- 开源免费:社区版功能完善,支持自托管;企业版提供高级权限、审计日志等增值服务
只需要关心前端界面,也可以做全栈工程师~,一站式提供内容API
介绍
官网:
Strapi - Open source Node.js Headless CMS 🚀
云部署
文档:Quick Start Guide - Strapi Developer Docs | Strapi 5 Documentation
技术架构与部署
- 技术栈:基于 Koa.js 框架,遵循 MVC 模式,使用 JWT 或 OAuth 保障 API 安全性。
- 数据库兼容性:支持 SQLite(默认)、MySQL、PostgreSQL、MongoDB 等。
- 存储:目前是存在本地的,如果需要OSS,可安装插件对接如阿里云OSS。
- 部署流程:
-
- 通过
npx create-strapi-app
快速初始化项目,开发模式下运行npm run develop
启动服务。 - 支持 Docker、AWS、Heroku 等多种云部署方式。
- 通过
核心内容
- 可视化内容建模:通过拖拽界面快速定义内容类型(如文章、商品),支持文本、图片、关系等字段,类似“数据库建表”。
- 自动化 API:一键生成增删改查接口,支持复杂查询(如过滤、分页),减少重复代码。
- 权限精细管理:按角色控制数据访问权限(如公开读取、管理员编辑),保障数据安全。
- 插件生态:200+插件扩展功能,如多语言、文件上传、支付接口,满足电商、博客等场景需求
适用场景
- 企业网站与博客:快速搭建内容发布系统,管理文章、产品信息。
- 移动应用后端:为 App 提供数据接口,支持实时内容更新。
- 物联网与电商平台:管理设备数据或商品库存,结合插件实现复杂业务逻辑(如支付集成)
开始构建(云方式)
这里使用cloud来暂时部署(目前有14天),后续可以自己本地部署~
创建项目
主界面
内容管理
类似就是各个表的信息列表
编辑内容
富文本是md的模式,如果是自己的链接预览效果有问题,但是作为API可以灵活处理~
媒体内容
表构建
类似表结构构建
市场插件
设置
角色接口
选择接口权限
国际化设置
我设置了但是一直选择不了~,算失败=_=
接口测试
文章列表接口效果
本地构建
先决条件
在安装 Strapi 之前,必须在您的计算机上安装以下组件:
- Node.js:仅支持处于 “活跃长期支持(Active LTS)” 或 “维护长期支持(Maintenance LTS)” 版本的 Node.js(目前为 v18、v20 和 v22 版本)。不支持奇数版本的 Node.js(即所谓的 “当前” 版本的 Node.js),例如 v19、v21。
- 您偏好的 Node.js 包管理器:
-
- npm(v6 及以上版本)
- yarn
- pnpm
- Python(如果使用 SQLite 数据库)
此外,您还需要安装 git
,并且要有一个 GitHub 账号,以便将项目部署到 Strapi Cloud 上。
npx create-strapi@latest my-strapi-project
然后跟着文档注册登录:
Quick Start Guide - Strapi Developer Docs | Strapi 5 Documentation
成功后后续的操作和云部署一样的
参考: