Microsoft Word 提供了一個內置功能來跟踪更改並保留 Word 文檔中的修訂。但是,我們可能會以編程方式在雲端接受或拒絕 Word 文檔(DOC 或 DOCX)的修訂。在本文中,我們將學習如何使用 Node.js 中的 REST API 接受或拒絕 Word 文檔中的修訂。
本文應涵蓋以下主題:
用於接受或拒絕更改的 REST API 和 Node.js SDK
為了接受或拒絕 Word 文檔中的跟踪更改,我們將使用 GroupDocs.Comparison Cloud 的 Node.js SDK API。它允許比較支持的格式 的兩個或多個文檔並跟踪它們的更改。請在控制台中使用以下命令安裝它:
npm install groupdocs-comparison-cloud
在執行上述步驟之前,請從儀表板獲取您的客戶端 ID 和密碼。獲得 ID 和密碼後,添加如下所示的代碼:
global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";
const config = new groupdocs_comparison_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";
在 Node.js 中使用 REST API 接受或拒絕跟踪更改
我們可以按照下面給出的簡單步驟接受或拒絕 Word 文檔中的特定修訂:
- 上傳DOCX文件到雲端
- 接受或拒絕 Word 文檔中的更改
- 下載輸出文件
上傳文件
首先,我們將使用下面給出的代碼示例將修改後的 Word 文檔上傳到雲端:
// 構造FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
// 輸入文件路徑
let file = 'C:\\Files\\source_with_revisions.docx';
// 讀取文件
fs.readFile(file, (err, fileStream) => {
// 創建上傳文件請求
let request = new groupdocs_comparison_cloud.UploadFileRequest("source_with_revisions.docx", fileStream, myStorage);
// 上傳文件
fileApi.uploadFile(request);
});
因此,上傳的 DOCX 文件將在雲端儀錶盤的 文件部分 中可用。
接受或拒絕 Word 文檔中的更改
現在,我們將按照以下步驟以編程方式接受或拒絕跟踪的更改:
- 首先,創建 ReviewApi 的實例。
- 接下來,提供上傳的 DOCX 文件路徑。
- 然後,獲取修訂並循環接受或拒絕所需的修訂。
- 最後,應用修訂並將更新後的文件保存為“output.docx”。
以下代碼示例展示瞭如何在 Node.js 中使用 REST API 接受 Word 文檔中的修訂。
// 創建 API 實例
let reviewApi = groupdocs_comparison_cloud.ReviewApi.fromKeys(clientId, clientSecret);
// 輸入源文件
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source_with_revisions.docx";
// 定義應用修訂選項
let options = new groupdocs_comparison_cloud.ApplyRevisionsOptions();
options.sourceFile = source;
options.outputPath = "output.docx";
// 創建獲取修訂請求
let request = new groupdocs_comparison_cloud.GetRevisionsRequest(source);
// 獲取所有修訂
let revisions = await reviewApi.getRevisions(request);
// 接受或拒絕修訂
revisions.forEach(revision => {
revision.action = groupdocs_comparison_cloud.RevisionInfo.ActionEnum.Accept;
});
options.revisions = revisions;
// 創建應用修訂請求
let applyRequest = new groupdocs_comparison_cloud.ApplyRevisionsRequest(options);
// 應用修訂
let response = await reviewApi.applyRevisions(applyRequest);
console.log("Output file link: " + response.href);
同樣,我們可以按照前面提到的步驟拒絕任何更改。但是,我們只需要應用以下修訂選項:
revisions.forEach(revision => {
revision.action = groupdocs_comparison_cloud.RevisionInfo.ActionEnum.Reject;
});
下載結果文件
因此,上述代碼示例將在雲端保存一個新創建的包含更改的 DOCX 文件。可以使用以下代碼示例下載它:
// 構造FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
// 創建下載文件請求
let request = new groupdocs_comparison_cloud.DownloadFileRequest("output.docx", myStorage);
// 下載文件
let response = await fileApi.downloadFile(request);
// 保存在工作目錄
fs.writeFile("C:\\Files\\output.docx", response, "binary", function (err) { });
接受或拒絕 Node.js 中的所有更改
我們可以按照以下步驟一次性接受或拒絕所有更改:
- 首先,創建 ReviewApi 的實例。
- 接下來,提供上傳的 DOCX 文件路徑。
- 然後,獲取修訂並接受或拒絕所有修訂。
- 最後,應用修訂並將更新後的文件保存為“output.docx”。
以下代碼示例展示瞭如何使用 REST API 接受所有更改。請按照前面提到的步驟上傳和下載文件。
// 創建 API 實例
let reviewApi = groupdocs_comparison_cloud.ReviewApi.fromKeys(clientId, clientSecret);
// 輸入源文件
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source_with_revisions.docx";
// 定義應用修訂選項
let options = new groupdocs_comparison_cloud.ApplyRevisionsOptions();
options.sourceFile = source;
options.outputPath = "output.docx";
// 接受所有修訂
options.acceptAll = true;
// 拒絕所有修改
// options.rejectAll = true;
// 創建應用修訂請求
let request = new groupdocs_comparison_cloud.ApplyRevisionsRequest(options);
// 應用修訂
let response = await reviewApi.applyRevisions(request);
console.log("Output file link: " + response.href);
在線試用
請試用以下使用上述API開發的免費在線DOCX比較工具。 https://products.groupdocs.app/comparison/docx
結論
在本文中,我們了解瞭如何使用雲上的 REST API 接受或拒絕 Word 文檔中的跟踪更改。我們還看到瞭如何以編程方式一次性接受或拒絕所有修訂。本文還介紹瞭如何以編程方式將 DOCX 文件上傳到雲端,然後從雲端下載生成的文件。此外,您可以使用 文檔 了解有關 GroupDocs.Comparison Cloud API 的更多信息。我們還提供了一個 API 參考 部分,讓您可以直接通過瀏覽器可視化我們的 API 並與之交互。如有任何歧義,請隨時在論壇上與我們聯繫。