跳到主要内容

重命名文件

下图和以下步骤说明了如何在 ONLYOFFICE 文档中重命名文档。

重命名文件

  1. 用户在文档编辑器中选择重命名...
  2. 文档编辑器通过 onRequestRename 事件将新名称发送给文档管理器
  3. 文档管理器将新名称发送到文档存储服务,集成商在此处重命名文件。
  4. 文档存储服务文档命令服务发送 meta 命令以更新文档名称。
  5. 文档编辑服务通过 onMetaChange 事件将新名称发送给每个用户的文档编辑器,使所有用户都能看到新名称。

如何在实践中做到这一点

  1. 创建一个 .html 文件来打开文档

  2. 在编辑器初始化配置中,定义 onRequestRename 事件处理程序。当用户在编辑器菜单中选择*重命名...*时,此事件会在 event.data 中传递新名称(不含文件扩展名)。在处理程序中,将新名称发送到您的服务器,以便在文档存储服务中重命名文件。

    onRequestRename onRequestRename
    function onRequestRename(event) {
    const newTitle = event.data;
    RENAME_FILE(newTitle);
    }

    const config = {
    events: {
    onRequestRename,
    },
    };

    const docEditor = new DocsAPI.DocEditor("placeholder", config);

    RENAME_FILE 是您的服务器端逻辑的占位符,用于在文档存储服务中重命名文档。

  3. 重命名文件后,从您的服务器向文档命令服务发送带有 meta 命令的请求,以更新所有正在编辑文档的用户的名称:

    {
    "c": "meta",
    "key": "Khirz6zTPdfd7",
    "meta": {
    "title": "Example Document Title.docx"
    }
    }
  4. 当收到 meta 命令时,每个用户的文档编辑器中会触发 onMetaChange 事件。新名称通过 event.data.title 传递。

    function onMetaChange(event) {
    const title = event.data.title;
    }

    const config = {
    events: {
    onMetaChange,
    },
    };

    const docEditor = new DocsAPI.DocEditor("placeholder", config);