本文档由 石墨办公 提供。
OfficeSDK 实例上的公共 API,也就是不依赖具体编辑器套件、宿主侧可以统一调用的能力。HeaderBars 虽然也挂在 sdk 根级实例上,但它属于独立扩展能力,不在本页展开。请查看顶部栏定制 HeaderBars。| API | 说明 |
|---|---|
connect(options) | 创建并连接 SDK,返回 OfficeSDK 实例 |
sdk.ready() | 等待 SDK 进入可交互状态 |
sdk.on(event, listener) | 监听事件 |
sdk.once(event, listener) | 监听一次性事件 |
sdk.off(event, listener?) | 取消事件监听 |
sdk.fileType | 获取当前文件类型 |
sdk.readyState | 获取当前 SDK 状态 |
sdk.getEditor() | 获取当前编辑器实例 |
sdk.disconnect() | 断开连接并移除 iframe |
sdk.setCredentials(payload) | 更新鉴权信息 |
sdk.setSignature(signature) | 仅更新 signature,已废弃 |
sdk.setToken(token) | 仅更新 token,已废弃 |
sdk.getPerformanceEntries() | 获取性能信息片段列表 |
OfficeSDK 实例。| 配置项 | 说明 |
|---|---|
fileId | 要打开的文档 ID |
endpoint | 石墨 SDK 服务地址 |
signature | 用于石墨 SDK 鉴权的签名 |
token | 用于接入方系统鉴权的 token |
container | iframe 挂载的目标容器元素 |
refreshCredentialsInterval | 自动刷新凭证的时间间隔,单位为毫秒;建议设为凭证过期时长的 80% |
getCredentials | 获取最新 signature 和 token 的异步方法 |
headerBarsVisible | 顶部栏初始是否展示,false 表示隐藏 |
lang | 编辑器界面语言,例如 zh-CN、en-US;未传时使用编辑器默认语言 |
smParams | URL 上下文参数,可传 base62 字符串、对象,或由字符串和对象组成的数组 |
signature 和 token 存在有效期。建议在 ConnectOptions 中配置 refreshCredentialsInterval 和 getCredentials,在凭证过期前自动刷新,避免用户长时间编辑时因凭证失效而中断。GET /api/apps/expire-config:返回凭证过期时长,例如 { expireMs: 900000 }GET /api/credentials:返回新凭证,例如 { signature, token }getCredentials 应从接入方后端获取最新凭证,并返回同时包含 signature 和 token 的对象。接口路径可按接入方系统实际情况调整。