ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

PocketBase 完整入门教程:单个 Go 二进制文件内建数据库、认证与后台管理的实时后端

PocketBase 完整入门教程:单个 Go 二进制文件内建数据库、认证与后台管理的实时后端 PocketBase 完整入门教程单个 Go 二进制文件内建数据库、认证与后台管理的实时后端【免费下载链接】pocketbaseOpen Source realtime backend in 1 file项目地址: https://gitcode.com/GitHub_Trending/po/pocketbasePocketBase 是一个用 Go 编写的开源后端把 SQLite 数据库、实时订阅、用户认证和管理面板全部装进一个可执行文件。它不需要额外安装数据库服务几分钟内就能跑起一套完整的后端接口适合独立开发者、小团队和需要快速验证原型的场景。能力总览一个二进制里装了什么能力说明相关位置内嵌 SQLite 数据库全部数据落在单文件里免部署core/db.go实时订阅数据变更通过 WebSocket 推给客户端apis/realtime.go用户认证邮箱验证、密码重置、OTP、OAuth2 登录apis/record_auth_with_password.go管理面板网页端维护数据模型与数据ui/src/文件存储本地目录或 S3tools/filesystem/JS/Go 双扩展脚本热更新或编译进二进制plugins/jsvm/ 最快启动方式从源码到跑通服务如果你不想只跑预编译版本装好 Go 后直接编译仓库里的最小示例即可git clone https://gitcode.com/GitHub_Trending/po/pocketbase cd pocketbase/examples/base CGO_ENABLED0 go build ./base serve服务默认监听127.0.0.1:8090见 cmd/serve.go浏览器打开这个地址首次启动会进入超级用户安装页在那里创建管理员账号。所有数据都写在pb_data目录备份时只需要带上这个目录。典型用法一用管理面板定义数据模型集合collection相当于数据表在管理面板中维护新建集合、添加字段、配置访问规则保存后对应的 REST 接口和管理界面自动生成。字段类型有布尔、日期、关联、文件、选择等十几种实现在 core/ 目录的field_*.go文件中模型定义见 core/collection_model.go。比如搭一个博客你只需要建 posts 和 comments 两个集合用户表是内置的认证接口现成可用。⚡ 典型用法二实时数据订阅实时端点在 apis/realtime.go 中实现。前端建立长连接并订阅某个集合的变更后该集合的记录发生增删改时会自动推送给客户端不用轮询。协作编辑、订单状态同步、多人看板这类场景用它最直接。 典型用法三两条扩展路径Go 扩展把 PocketBase 当普通 Go 库引入在事件钩子里写业务逻辑最后仍可编译成单个静态可执行文件示例见 examples/base/main.goJS 扩展JS VM 插件plugins/jsvm/加载pb_hooks目录下的脚本改逻辑不用重新编译复杂、稳定的逻辑用 Go频繁微调的规则用 JS两者可以同时存在。按需定制改什么去哪里找系统邮件模板验证、密码重置等mails/templates/限流、CORS、请求体大小限制apis/middlewares_rate_limit.go 等中间件定时任务调度tools/cron/数据库结构变更脚本migrations/✅ 上线前检查清单端口与域名给serve传入域名参数后HTTP/HTTPS 默认切到0.0.0.0:80/443并自动申请证书裸跑时默认只监听本机版本兼容项目 README 明确 v1.0 之前不保证完全向后兼容建议锁定版本升级前备份pb_data容量预期SQLite 单文件适合中小并发高并发读可以考虑只读副本而不是直接上分布式下一步一个 10 分钟验证任务挑一个小业务比如待办清单在管理面板建 1 个集合、加 3~5 个字段然后写两行请求调用列表接口再开一个实时订阅确认数据变更能推过来。走通这条链路你对 PocketBase 的用法就基本有数了更细的接口参数可以在管理面板的 API 预览面板里逐条试。【免费下载链接】pocketbaseOpen Source realtime backend in 1 file项目地址: https://gitcode.com/GitHub_Trending/po/pocketbase创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表