ARTICLE DETAIL

资讯详情

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

InsForge 自动API生成完整指南:建一张表,3步拿到一组数据库接口

InsForge 自动API生成完整指南:建一张表,3步拿到一组数据库接口 InsForge 自动API生成完整指南建一张表3步拿到一组数据库接口【免费下载链接】InsForgeThe all-in-one, open-source backend platform for agentic coding. InsForge gives your coding agent database, auth, storage, compute, hosting, and AI gateway to ship full-stack apps end-to-end.项目地址: https://gitcode.com/GitHub_Trending/in/InsForgeInsForge 是一个开源的一体化后端平台它的自动API生成特性指的是用 PostgreSQL 写一条 CREATE TABLE系统随即给这张表配好一组 REST 端点过滤、排序、分页都随库自带不需要手写路由代码。以做一个任务清单为例表一建好前端就能开始发请求。建一张表端点集随之生成最小闭环只需要一段 SQL。以文章表为例create table posts ( id uuid primary key default gen_random_uuid(), title text not null, content text, published boolean default false, created_at timestamptz default now() );这条语句执行完成后系统会自动开放以下能力无需任何额外配置/api/database/records/posts四个端点GET 查询、POST 创建、PATCH 更新、DELETE 删除查询内置limit、offset、order、select参数任意列都可挂 PostgREST 过滤算子/api/database/rpc/{函数名}端点可直接调用库内存储函数TypeScript、Swift、Kotlin 的 SDK应用侧的官方客户端库都指向这组端点客户端拿到的是类型安全的调用。这是控制台的数据库表编辑器列都带类型标注支持行内编辑同区域的 SQL 窗口可以直接执行 DDL。表一旦建好对应的 REST 端点就同步生效不必再刷新或重启什么。表为什么能变成接口中间层是 PostgREST一个直连 PostgreSQL、把表结构翻译成 REST 资源的开源组件表名对应资源路径列名对应 JSON 字段新表出现后它会自动重载 schema 元数据端点随即生效。一个请求的完整路径可以压缩成四步CREATE TABLE → PostgREST 读到新表结构 → REST 端点生效 → 请求携带 JWT登录签发的身份令牌进入数据库由行级安全RLS在数据库层面按行过滤的策略机制逐行判断可见性。正因为权限规则落在数据库里同一套策略同时约束 REST 查询、SDK 调用和实时订阅。假设策略只允许auth.uid() user_id成立那么任何渠道想读别人的行都会拿到空结果而不是报错。机制细节可以对照 数据库概览文档。四种值得先试的调用方式过滤加分页GET 请求直接拼查询串即可。?statuseq.activeordercreatedAt.desclimit20拿到最新 20 条活跃记录多条件可以按列继续叠加。批量写入与 upsertPOST 的请求体必须写成 JSON 数组一次请求能落多条记录再带上请求头Prefer: resolutionmerge-duplicates遇到主键相同的记录时自动转为更新也就是有则更新、无则插入。调用存储函数把聚合或业务规则写进数据库函数后客户端向/api/database/rpc/get_user_stats发 POST调用方式和普通接口没有区别。实时推送REST 通道之外InsForge 还提供实时变更推送表数据变化时订阅方通过 WebSocket 收到通知适合做多人协作类界面。这是控制台里的实时订阅管理页能看到频道列表与事件类型。它和 REST 通道共用同一套 RLS 策略权限口径一致。常用过滤算子集中在下面这张表里写查询串时对照即可想查什么查询串写法常见场景精确匹配statuseq.published拉某个状态的数据时间范围created_atgte.2025-01-01统计近期记录模糊匹配不分大小写titleilike.*ins*搜索框多值匹配statusin.(active,pending)多选筛选空值判断archived_atis.null软删除过滤上手前的四个注意点匿名不等于无权限。每个请求都要带 JWT匿名密钥同样过 RLS若某张表没有放行公开的读策略查询会返回空数组而不是报错容易误判成没数据。写入体必须是数组。即使只创建一条记录也要把对象包进[]否则请求会被校验拒绝。upsert 依赖唯一约束。表上要有主键或唯一索引系统才能判断冲突时该更新哪条记录。迁移文件在事务里执行。文件里不要写 BEGIN、COMMIT、ROLLBACK文件一旦被应用就不要再原地修改追加一个新的前向迁移即可细节见 迁移文档。五步跑通调用链路在 InsForge Cloud 控制台创建项目从项目页地址栏复制 Project ID。在项目目录执行npx insforge/cli link --project-id 你的项目ID绑定本地代码。建表入口二选一在控制台表编辑器直接建或执行npx insforge/cli db migrations new create-posts-table生成迁移文件后填 SQL。执行npx insforge/cli db migrations up --all把待应用迁移按顺序跑掉。用一次 GET 验证端点是否就绪curl https://你的域名/api/database/records/posts?limit10 \ -H Authorization: Bearer 你的jwt这是项目连接界面绑定完成后控制台会展示项目的密钥与连接信息客户端 SDK 初始化时就要用到它们。查询参数的完整参考见 REST API 参考。在 InsForge 里表结构就是接口契约改一列端点立刻跟着变开发者的精力可以留在业务逻辑上而不是样板 CRUD。参考路径docs/core-concepts/database/overview.mdx·docs/core-concepts/database/migrations.mdx·docs/sdks/rest/database.mdx【免费下载链接】InsForgeThe all-in-one, open-source backend platform for agentic coding. InsForge gives your coding agent database, auth, storage, compute, hosting, and AI gateway to ship full-stack apps end-to-end.项目地址: https://gitcode.com/GitHub_Trending/in/InsForge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表