Server Kit 开发指南
Server Kit 是 Genstore SDK 的服务端组件,提供认证管理、会话处理等核心功能,是构建 Genstore 应用的基础。
安装
CLI 项目(推荐)
通过 CLI 创建的项目已自动预置 Server Kit,无需单独安装。
自定义项目
bash
npm install @genstore/app-server-kit
快速开始
创建应用实例
使用 ServerApp
创建应用实例,完成基础配置:
jsx
import { ServerApp } from '@genstore/app-server-kit';
import { MemorySessionStorage } from '@genstore/app-server-kit/utils';
const blazeApp = ServerApp({
clientID: process.env.DevClientID || '',
clientSecret: process.env.DevClientSecret || '',
sessionStorage: new MemorySessionStorage(),
scopes: process.env.SCOPES?.split(','),
appUrl: process.env.APP_URL || '',
auth: {
path: '/auth',
},
isEmbeddedApp: true,
useOnlineTokens: false,
});
TIP
注意:应用实例应在代码中只创建一次。推荐在应用初始化时创建并导出实例。
配置项
参数 | 类型 | 描述 |
---|---|---|
clientID | string | 应用的唯一标识符,用于应用身份认证 |
clientSecret | string | 应用密钥,用于安全校验 |
sessionStorage | SessionStorage | 会话存储实现,用于管理用户会话,需要提供: - loadSession - storeSession - deleteSession |
scopes | string | 应用所需的权限范围列表 |
appUrl | string | 应用的访问地址 |
auth.path | string | 认证路径,默认为 '/auth' |
isEmbeddedApp | boolean | 是否为嵌入式应用 |
useOnlineTokens | boolean | token 模式: - true :表示在线 token- false :表示离线 token |
核心 API
blazeApp.authenticate(request: Request)
处理请求认证,获取会话信息。认证失败时会自动重定向到 auth.path
。
返回:Session 对象
属性 | 类型 | 描述 |
---|---|---|
accessToken | string | 用于访问 Genstore 开放 API 的令牌 |
… | … |