檔案交換整合
為 Univer 應用程式加入檔案匯入匯出,可搭配或不搭配協同編輯。
在 Univer 開啟 Excel 檔案前,必須先轉為編輯器可讀取的資料;匯出時,再將編輯後資料轉回 Excel。伺服器端 @univerjs-pro/exchange-node 負責轉換,瀏覽器負責上傳、開啟文件與下載結果。
不使用協同編輯
例如,使用者上傳 Excel,在頁面編輯,再下載 Excel 結果。
- 瀏覽器上傳檔案,伺服器轉成 Univer 文件資料並回傳。
- 瀏覽器以此資料開啟試算表,供使用者編輯。
- 匯出時,瀏覽器將修改後資料送至伺服器,產生 Excel 供下載。
此流程不需要協同服務。瀏覽器 API 的「快照」就是此處使用的文件資料。快照匯入匯出仍需要伺服器轉換。若要儲存工作供日後繼續,應用程式還需要保存這些資料。
轉換模組的安裝與用法請參閱 Office 檔案匯入匯出。若只需在 Node.js 處理檔案,也從該頁開始。
使用協同編輯
例如,使用者匯入 Excel,與同事分享並共同編輯文件,稍後再匯出。
- 伺服器轉換上傳檔案,將結果存成協同文件。
- 伺服器回傳文件 ID,瀏覽器載入此 ID,其他使用者也用相同 ID 加入文件。
- 匯出時,伺服器讀取最新文件內容並產生 Excel 供下載。
瀏覽器 API 的 unitId 即此文件 ID。先完成協同整合,再執行 Exchange 範例,並對照其中的瀏覽器、伺服器與轉換程式碼。
匯出前請等待目前修改完成同步,否則檔案可能缺少最新變更。讀取與轉換協同文件請參閱擴充模組的伺服器端 Office Exchange 章節。
接入匯入匯出按鈕
伺服器轉換可用後,將其接到頁面:
- 使用 Univer 選單或 Facade API: 依 Exchange 範例實作上傳、轉換、任務查詢與下載介面,再設定瀏覽器外掛。請求位址與回應格式必須相符。
- 使用自訂按鈕: 呼叫應用程式 API。匯入後開啟回傳的文件資料或 ID,匯出後下載產生的檔案。
瀏覽器設定請參閱 Sheets、Docs、Slides、Boards、Bases與 PDFs。協同範例示範 Sheets;其他產品請查閱 Office 檔案匯入匯出,並確認使用版本支援的格式。
驗證整合
匯入實際業務檔案,編輯後匯出,再以 Office 應用程式開啟,檢查修改、公式、圖片與版面。使用協同時,還要確認其他使用者能開啟相同文件,且伺服器重啟後內容仍保留。
部署前,將範例的暫存檔與記憶體任務換成應用程式儲存,限制上傳大小,處理轉換失敗與逾時。上傳、任務查詢與下載皆須檢查存取權,請參閱身分與授權。
你覺得這篇文檔如何?