<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>document merging on Document Processing REST APIs | GroupDocs Cloud</title>
    <link>https://blog-qa.groupdocs.cloud/vi/tag/document-merging/</link>
    <description>Recent content in document merging on Document Processing REST APIs | GroupDocs Cloud</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>vi</language>
    <lastBuildDate>Mon, 14 Sep 2026 14:29:18 +0000</lastBuildDate><atom:link href="https://blog-qa.groupdocs.cloud/vi/tag/document-merging/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Cách Kết Hợp Nhiều Tài Liệu Word trong Java</title>
      <link>https://blog-qa.groupdocs.cloud/vi/merger/how-to-combine-multiple-word-documents-in-java/</link>
      <pubDate>Mon, 14 Sep 2026 14:29:18 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/vi/merger/how-to-combine-multiple-word-documents-in-java/</guid>
      <description>Kết hợp nhiều tài liệu Word trong Java bằng cách sử dụng GroupDocs.Merger Cloud SDK. Thực hiện theo hướng dẫn từng bước này cho mã, các lệnh cURL, cài đặt và các thực tiễn tốt nhất.</description>
      <content:encoded><![CDATA[<p>Kết hợp các tệp Word một cách lập trình là một yêu cầu thường gặp khi xây dựng các ứng dụng tập trung vào tài liệu, đặc biệt là để tạo báo cáo hoặc hợp nhất hợp đồng. <a href="https://products.groupdocs.cloud/merger/java/">GroupDocs.Merger Cloud SDK for Java</a> cung cấp một thư viện đơn giản, dựa trên đám mây cho phép bạn hợp nhất các tệp <a href="https://docs.fileformat.com/word-processing/docx/">DOCX</a> mà không cần xử lý tệp ở mức độ thấp. Trong hướng dẫn này, bạn sẽ học cách kết hợp nhiều tài liệu Word trong Java, xem một ví dụ mã hoàn chỉnh, khám phá các lệnh cURL tương đương, và hiểu cách thiết lập cần thiết. Khi kết thúc, bạn sẽ sẵn sàng tích hợp việc hợp nhất tài liệu vào các dự án Java của mình.</p>
<h2 id="ví-dụ-hoạt-động-đầy-đủ-để-kết-hợp-nhiều-tài-liệu-word-trong-java">Ví dụ Hoạt động Đầy đủ để Kết hợp Nhiều Tài liệu Word trong Java</h2>
<p>Ví dụ này trình bày cách kết hợp nhiều tài liệu Word trong Java bằng cách sử dụng Merger API.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.merger.cloud.client.ApiClient<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.merger.cloud.client.ApiException<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.merger.cloud.api.MergerApi<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.merger.cloud.model.FileInfo<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> com.groupdocs.merger.cloud.model.MergeOptions<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> java.util.ArrayList<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">import</span> java.util.List<span style="color:#f92672">;</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">public</span> <span style="color:#66d9ef">class</span> <span style="color:#a6e22e">CombineWordDocuments</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">public</span> <span style="color:#66d9ef">static</span> <span style="color:#66d9ef">void</span> <span style="color:#a6e22e">main</span><span style="color:#f92672">(</span>String<span style="color:#f92672">[]</span> args<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// Initialize the API client with your credentials
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        ApiClient apiClient <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ApiClient<span style="color:#f92672">(</span><span style="color:#e6db74">&#34;YOUR_CLIENT_ID&#34;</span><span style="color:#f92672">,</span> <span style="color:#e6db74">&#34;YOUR_CLIENT_SECRET&#34;</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>        MergerApi mergerApi <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> MergerApi<span style="color:#f92672">(</span>apiClient<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">try</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            <span style="color:#75715e">// List of Word documents to combine
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            List<span style="color:#f92672">&lt;</span>FileInfo<span style="color:#f92672">&gt;</span> sourceFiles <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ArrayList<span style="color:#f92672">&lt;&gt;();</span>
</span></span><span style="display:flex;"><span>            sourceFiles<span style="color:#f92672">.</span><span style="color:#a6e22e">add</span><span style="color:#f92672">(</span><span style="color:#66d9ef">new</span> FileInfo<span style="color:#f92672">().</span><span style="color:#a6e22e">setFilePath</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;input1.docx&#34;</span><span style="color:#f92672">));</span>
</span></span><span style="display:flex;"><span>            sourceFiles<span style="color:#f92672">.</span><span style="color:#a6e22e">add</span><span style="color:#f92672">(</span><span style="color:#66d9ef">new</span> FileInfo<span style="color:#f92672">().</span><span style="color:#a6e22e">setFilePath</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;input2.docx&#34;</span><span style="color:#f92672">));</span>
</span></span><span style="display:flex;"><span>            sourceFiles<span style="color:#f92672">.</span><span style="color:#a6e22e">add</span><span style="color:#f92672">(</span><span style="color:#66d9ef">new</span> FileInfo<span style="color:#f92672">().</span><span style="color:#a6e22e">setFilePath</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;input3.docx&#34;</span><span style="color:#f92672">));</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Configure merge options
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            MergeOptions mergeOptions <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> MergeOptions<span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>            mergeOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setOutputPath</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;merged_output.docx&#34;</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>            mergeOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setFileInfos</span><span style="color:#f92672">(</span>sourceFiles<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Execute the merge operation
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>            FileInfo result <span style="color:#f92672">=</span> mergerApi<span style="color:#f92672">.</span><span style="color:#a6e22e">merge</span><span style="color:#f92672">(</span>mergeOptions<span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span>System<span style="color:#f92672">.</span><span style="color:#a6e22e">out</span><span style="color:#f92672">.</span><span style="color:#a6e22e">println</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;Merge completed successfully. Output file: &#34;</span> <span style="color:#f92672">+</span> result<span style="color:#f92672">.</span><span style="color:#a6e22e">getFilePath</span><span style="color:#f92672">());</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">}</span> <span style="color:#66d9ef">catch</span> <span style="color:#f92672">(</span>ApiException e<span style="color:#f92672">)</span> <span style="color:#f92672">{</span>
</span></span><span style="display:flex;"><span>            System<span style="color:#f92672">.</span><span style="color:#a6e22e">err</span><span style="color:#f92672">.</span><span style="color:#a6e22e">println</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;An error occurred while merging documents: &#34;</span> <span style="color:#f92672">+</span> e<span style="color:#f92672">.</span><span style="color:#a6e22e">getMessage</span><span style="color:#f92672">());</span>
</span></span><span style="display:flex;"><span>        <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">}</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">}</span>
</span></span></code></pre></div><blockquote>
<p><strong>Lưu ý:</strong> Ví dụ mã này minh họa chức năng cốt lõi. Trước khi sử dụng trong dự án của bạn, hãy chắc chắn cập nhật mọi đường dẫn tệp và giá trị cấu hình để phù hợp với môi trường thực tế của bạn, xác minh rằng tất cả các phụ thuộc cần thiết đã được cài đặt đúng cách, và kiểm tra kỹ lưỡng trong môi trường phát triển. Nếu bạn gặp bất kỳ vấn đề nào, vui lòng tham khảo <a href="https://docs.groupdocs.cloud/merger/">tài liệu chính thức</a> hoặc liên hệ với <a href="https://forum.groupdocs.cloud/c/merger/18">đội hỗ trợ</a> để được trợ giúp.</p>
</blockquote>
<h2 id="hợp-nhất-các-tệp-word-qua-rest-api-bằng-curl">Hợp nhất các tệp Word qua REST API bằng cURL</h2>
<p>Nếu bạn muốn sử dụng phương pháp REST thuần túy, cùng một thao tác hợp nhất có thể được thực hiện bằng các lệnh cURL. Các bước dưới đây cho thấy cách lấy token truy cập, tải lên các tệp nguồn, yêu cầu hợp nhất và tải xuống kết quả.</p>
<p>Xác thực và nhận token truy cập:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/auth/token&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/json&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -d <span style="color:#e6db74">&#39;{&#34;client_id&#34;:&#34;YOUR_CLIENT_ID&#34;,&#34;client_secret&#34;:&#34;YOUR_CLIENT_SECRET&#34;}&#39;</span>
</span></span></code></pre></div><p>Tải lên mỗi tệp DOCX lên bộ nhớ đám mây của bạn (thay thế <strong>YOUR_ACCESS_TOKEN</strong> bằng token từ bước trước):</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X PUT <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/input1.docx&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/vnd.openxmlformats-officedocument.wordprocessingml.document&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     --data-binary @input1.docx
</span></span></code></pre></div><p>Lặp lại lệnh tải lên cho <code>input2.docx</code> và <code>input3.docx</code>.</p>
<p>Tạo yêu cầu hợp nhất:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/merger/merge&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Content-Type: application/json&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -d <span style="color:#e6db74">&#39;{
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;outputPath&#34;:&#34;merged_output.docx&#34;,
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;fileInfos&#34;:[
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               {&#34;filePath&#34;:&#34;input1.docx&#34;},
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               {&#34;filePath&#34;:&#34;input2.docx&#34;},
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               {&#34;filePath&#34;:&#34;input3.docx&#34;}
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           ]
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">         }&#39;</span>
</span></span></code></pre></div><p>Tải xuống tài liệu đã hợp nhất:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X GET <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/merged_output.docx&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -o merged_output.docx
</span></span></code></pre></div><p>Để biết thêm chi tiết về các tham số yêu cầu, xem <a href="https://reference.groupdocs.cloud/merger/">tài liệu API chính thức</a>.</p>
<h2 id="hiểu-quy-trình-kết-hợp-tài-liệu-word-trong-java">Hiểu quy trình kết hợp tài liệu Word trong Java</h2>
<p>Dưới đây là phân tích từng bước của mã đã được trình bày ở trên.</p>
<ol>
<li>
<p><strong>Create an ApiClient</strong> - <code>new ApiClient(&quot;YOUR_CLIENT_ID&quot;, &quot;YOUR_CLIENT_SECRET&quot;)</code> thiết lập kết nối tới dịch vụ đám mây GroupDocs.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>ApiClient apiClient <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ApiClient<span style="color:#f92672">(</span><span style="color:#e6db74">&#34;YOUR_CLIENT_ID&#34;</span><span style="color:#f92672">,</span> <span style="color:#e6db74">&#34;YOUR_CLIENT_SECRET&#34;</span><span style="color:#f92672">);</span>
</span></span></code></pre></div></li>
<li>
<p><strong>Instantiate MergerApi</strong> - <code>new MergerApi(apiClient)</code> cung cấp quyền truy cập vào các endpoint liên quan đến hợp nhất.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>MergerApi mergerApi <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> MergerApi<span style="color:#f92672">(</span>apiClient<span style="color:#f92672">);</span>
</span></span></code></pre></div></li>
<li>
<p><strong>Prepare source file list</strong> - Mỗi đối tượng <code>FileInfo</code> chỉ tới một tệp DOCX được lưu trữ trên đám mây. Danh sách này được truyền vào <code>MergeOptions</code>.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>List<span style="color:#f92672">&lt;</span>FileInfo<span style="color:#f92672">&gt;</span> sourceFiles <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> ArrayList<span style="color:#f92672">&lt;&gt;();</span>
</span></span><span style="display:flex;"><span>sourceFiles<span style="color:#f92672">.</span><span style="color:#a6e22e">add</span><span style="color:#f92672">(</span><span style="color:#66d9ef">new</span> FileInfo<span style="color:#f92672">().</span><span style="color:#a6e22e">setFilePath</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;input1.docx&#34;</span><span style="color:#f92672">));</span>
</span></span></code></pre></div></li>
<li>
<p><strong>Configure MergeOptions</strong> - Đặt đường dẫn đầu ra mong muốn và gắn danh sách các tệp nguồn.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>MergeOptions mergeOptions <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> MergeOptions<span style="color:#f92672">();</span>
</span></span><span style="display:flex;"><span>mergeOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setOutputPath</span><span style="color:#f92672">(</span><span style="color:#e6db74">&#34;merged_output.docx&#34;</span><span style="color:#f92672">);</span>
</span></span><span style="display:flex;"><span>mergeOptions<span style="color:#f92672">.</span><span style="color:#a6e22e">setFileInfos</span><span style="color:#f92672">(</span>sourceFiles<span style="color:#f92672">);</span>
</span></span></code></pre></div></li>
<li>
<p><strong>Execute merge</strong> - <code>mergerApi.merge(mergeOptions)</code> gửi yêu cầu và trả về một <code>FileInfo</code> cho tài liệu đã hợp nhất.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-java" data-lang="java"><span style="display:flex;"><span>FileInfo result <span style="color:#f92672">=</span> mergerApi<span style="color:#f92672">.</span><span style="color:#a6e22e">merge</span><span style="color:#f92672">(</span>mergeOptions<span style="color:#f92672">);</span>
</span></span></code></pre></div></li>
</ol>
<p>Để xem danh sách đầy đủ các thuộc tính có sẵn, hãy tham khảo <a href="https://reference.groupdocs.cloud/merger/">tài liệu API</a>.</p>
<h2 id="các-yêu-cầu-trước-và-thiết-lập-cho-groupdocsmerger-cloud-sdk">Các yêu cầu trước và thiết lập cho GroupDocs.Merger Cloud SDK</h2>
<p>Trước khi bạn có thể chạy mã, hãy thêm phụ thuộc Maven vào dự án của bạn và đảm bảo bạn có một tài khoản GroupDocs hợp lệ.</p>
<p>Thêm SDK vào <code>pom.xml</code> của bạn:</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-xml" data-lang="xml"><span style="display:flex;"><span><span style="color:#f92672">&lt;dependency&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;groupId&gt;</span>com.groupdocs<span style="color:#f92672">&lt;/groupId&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;artifactId&gt;</span>groupdocs-merger-cloud<span style="color:#f92672">&lt;/artifactId&gt;</span>
</span></span><span style="display:flex;"><span>    <span style="color:#f92672">&lt;version&gt;</span>25.11<span style="color:#f92672">&lt;/version&gt;</span>
</span></span><span style="display:flex;"><span><span style="color:#f92672">&lt;/dependency&gt;</span>
</span></span></code></pre></div><p>Tải xuống các tệp JAR và mã nguồn mới nhất từ <a href="https://releases.groupdocs.cloud/merger/java/">trang tải xuống</a>.<br>
Bạn cũng sẽ cần Java 8 hoặc cao hơn và kết nối internet để thực hiện các cuộc gọi đám mây.<br>
Tạo một tài khoản GroupDocs, lấy <strong>Client ID</strong> và <strong>Client Secret</strong> của bạn, và giữ chúng an toàn.</p>
<h2 id="kết-luận">Kết luận</h2>
<p>Việc hợp nhất các tệp DOCX một cách lập trình hiện đã trở nên đơn giản với <a href="https://products.groupdocs.cloud/merger/java/">GroupDocs.Merger Cloud SDK for Java</a>. Mã mẫu và các đoạn cURL minh họa hai cách linh hoạt để kết hợp nhiều tài liệu Word trong Java, cho dù bạn thích sử dụng thư viện gốc hay gọi trực tiếp REST. Hãy nhớ cấu hình thông tin xác thực của bạn, xử lý các tệp lớn bằng cách streaming nếu cần, và kiểm tra hoạt động hợp nhất với các tài liệu đại diện. Đối với triển khai trong môi trường sản xuất, bạn sẽ cần một giấy phép trả phí; chi tiết giá cả có sẵn trên trang sản phẩm và bạn có thể yêu cầu giấy phép tạm thời để đánh giá từ <a href="https://purchase.groupdocs.cloud/temporary-license/">trang giấy phép tạm thời</a>.</p>
<h2 id="câu-hỏi-thường-gặp">Câu hỏi thường gặp</h2>
<ul>
<li>
<p><strong>Làm thế nào để kết hợp nhiều tài liệu Word trong Java mà không cần viết mã xử lý tệp tùy chỉnh?</strong><br>
Sử dụng <a href="https://products.groupdocs.cloud/merger/java/">GroupDocs.Merger Cloud SDK for Java</a>. SDK trừu tượng hoá tất cả các thao tác cấp thấp và cho phép bạn hợp nhất các tệp DOCX chỉ với một vài lời gọi API.</p>
</li>
<li>
<p><strong>Có thể hợp nhất các tài liệu được lưu trong các thư mục đám mây khác nhau không?</strong><br>
Có. Cung cấp đường dẫn tệp đầy đủ trên đám mây trong các đối tượng <code>FileInfo</code>, và thao tác hợp nhất sẽ lấy mỗi tệp từ vị trí của chúng trước khi kết hợp lại.</p>
</li>
<li>
<p><strong>Tôi nên làm gì nếu quá trình hợp nhất thất bại với ApiException?</strong><br>
Kiểm tra thông báo ngoại lệ để biết chi tiết như thiếu tệp hoặc vấn đề quyền truy cập. Đảm bảo các đường dẫn tệp đúng và tài khoản của bạn có quyền đọc/ghi đối với bộ nhớ. Tham khảo <a href="https://docs.groupdocs.cloud/merger/">tài liệu chính thức</a> để biết mã lỗi.</p>
</li>
<li>
<p><strong>Tôi có cần giấy phép riêng cho mỗi môi trường (phát triển, thử nghiệm, sản xuất) không?</strong><br>
Một giấy phép duy nhất bao phủ tất cả các môi trường, nhưng bạn phải tuân thủ các giới hạn sử dụng được định nghĩa trong thỏa thuận giấy phép của mình. Đối với việc thử nghiệm, bạn có thể sử dụng giấy phép tạm thời được liên kết ở trên.</p>
</li>
</ul>
<h2 id="đọc-thêm">Đọc thêm</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/vi/merger/password-protect-zip-file-using-password-protection-software/">Bảo vệ tệp ZIP bằng mật khẩu sử dụng phần mềm bảo vệ mật khẩu</a></li>
<li><a href="https://blog.groupdocs.cloud/vi/merger/password-protect-excel-using-password-protection-service/">Bảo vệ Excel bằng mật khẩu sử dụng dịch vụ bảo vệ mật khẩu</a></li>
<li><a href="https://blog.groupdocs.cloud/vi/merger/combine-word-documents-in-csharp/">Kết hợp tài liệu Word trong C#</a></li>
</ul>
]]></content:encoded>
    </item>
    
    <item>
      <title>Cách Kết Hợp Nhiều Tài Liệu Word trong Node.JS</title>
      <link>https://blog-qa.groupdocs.cloud/vi/merger/how-to-combine-multiple-word-documents-in-nodejs/</link>
      <pubDate>Wed, 19 Aug 2026 10:37:27 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/vi/merger/how-to-combine-multiple-word-documents-in-nodejs/</guid>
      <description>Tìm hiểu cách kết hợp các tài liệu Word trong Node.JS với GroupDocs.Merger Cloud SDK. Hướng dẫn này cung cấp mã, ví dụ cURL và các bước thiết lập để dễ dàng hợp nhất.</description>
      <content:encoded><![CDATA[<p>Nhiều nhà phát triển cần kết hợp nhiều tài liệu Word trong Node.JS để tạo ra các báo cáo hoặc gói tổng hợp. <a href="https://products.groupdocs.cloud/merger/nodejs/">GroupDocs.Merger Cloud SDK for Node.js</a> cung cấp một API mạnh mẽ xử lý việc hợp nhất Word phía máy chủ mà không cần mã xử lý tệp phức tạp. Trong hướng dẫn này, bạn sẽ thấy một triển khai đầy đủ, các lệnh cURL tương đương, các bước cài đặt và các mẹo thực hành tốt nhất để nhanh chóng hợp nhất tài liệu của mình.</p>
<h2 id="kết-hợp-nhiều-tài-liệu-word-trong-nodejs---ví-dụ-mã-hoàn-chỉnh">Kết hợp nhiều tài liệu Word trong Node.JS - Ví dụ mã hoàn chỉnh</h2>
<p>Ví dụ này minh họa cách hợp nhất ba tệp <a href="https://docs.fileformat.com/word-processing/docx/">DOCX</a> thành một tài liệu duy nhất bằng cách sử dụng GroupDocs.Merger Cloud SDK for Node.js.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;@groupdocs/merger-cloud&#34;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ==== Configuration ====
</span></span></span><span style="display:flex;"><span><span style="color:#75715e">// Replace with your actual credentials
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">clientId</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;YOUR_CLIENT_ID&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">clientSecret</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;YOUR_CLIENT_SECRET&#34;</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">config</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">Configuration</span>(<span style="color:#a6e22e">clientId</span>, <span style="color:#a6e22e">clientSecret</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">mergeApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">MergeApi</span>(<span style="color:#a6e22e">config</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ==== Input / Output paths ====
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">inputFiles</span> <span style="color:#f92672">=</span> [
</span></span><span style="display:flex;"><span>    <span style="color:#e6db74">&#34;documents/input1.docx&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#e6db74">&#34;documents/input2.docx&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#e6db74">&#34;documents/input3.docx&#34;</span>
</span></span><span style="display:flex;"><span>];
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">outputFile</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;documents/combined_output.docx&#34;</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ==== Build request ====
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">documentEntries</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">inputFiles</span>.<span style="color:#a6e22e">map</span>(<span style="color:#a6e22e">path</span> =&gt; {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">Models</span>.<span style="color:#a6e22e">DocumentEntry</span>({
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">fileInfo</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">Models</span>.<span style="color:#a6e22e">FileInfo</span>({
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">filePath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">path</span>
</span></span><span style="display:flex;"><span>        })
</span></span><span style="display:flex;"><span>    });
</span></span><span style="display:flex;"><span>});
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">mergeRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">Models</span>.<span style="color:#a6e22e">MergeDocumentsRequest</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">documents</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">documentEntries</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">outputPath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">outputFile</span>
</span></span><span style="display:flex;"><span>});
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ==== Execute merge ====
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>(<span style="color:#66d9ef">async</span> () =&gt; {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">try</span> {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">result</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">mergeApi</span>.<span style="color:#a6e22e">mergeDocuments</span>(<span style="color:#a6e22e">mergeRequest</span>);
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">`Merge completed successfully. Output file: </span><span style="color:#e6db74">${</span><span style="color:#a6e22e">result</span>.<span style="color:#a6e22e">path</span><span style="color:#e6db74">}</span><span style="color:#e6db74">`</span>);
</span></span><span style="display:flex;"><span>    } <span style="color:#66d9ef">catch</span> (<span style="color:#a6e22e">error</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">error</span>(<span style="color:#e6db74">&#34;Error during merging:&#34;</span>, <span style="color:#a6e22e">error</span>);
</span></span><span style="display:flex;"><span>    }
</span></span><span style="display:flex;"><span>})();
</span></span></code></pre></div><blockquote>
<p><strong>Lưu ý:</strong> Ví dụ mã này minh họa chức năng cốt lõi. Trước khi sử dụng trong dự án của bạn, hãy đảm bảo cập nhật các đường dẫn tệp (<code>input1.docx</code>, <code>combined_output.docx</code>, v.v.) cho phù hợp với vị trí tệp thực tế của bạn, xác minh rằng tất cả các phụ thuộc cần thiết đã được cài đặt đúng cách, và kiểm tra kỹ lưỡng trong môi trường phát triển. Nếu bạn gặp bất kỳ vấn đề nào, vui lòng tham khảo <a href="https://docs.groupdocs.cloud/merger/">tài liệu chính thức</a> hoặc liên hệ với <a href="https://forum.groupdocs.cloud/c/merger/18">đội hỗ trợ</a> để được trợ giúp.</p>
</blockquote>
<h2 id="kết-hợp-tài-liệu-word-qua-rest-api-bằng-curl">Kết hợp tài liệu Word qua REST API bằng cURL</h2>
<p>Nếu bạn ưu tiên cách tiếp cận REST thuần túy, cùng một thao tác hợp nhất có thể được thực hiện bằng các lệnh cURL. Dưới đây là quy trình ngắn gọn xác thực, tải lên các tệp nguồn, thực hiện hợp nhất và tải xuống kết quả.</p>
<h3 id="1-xác-thực-và-lấy-mã-truy-cập">1. Xác thực và Lấy Mã Truy cập</h3>
<!--[CODE_SNIPPET_START]-->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/merger/authenticate&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>-H <span style="color:#e6db74">&#34;Content-Type: application/json&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>-d <span style="color:#e6db74">&#39;{&#34;client_id&#34;:&#34;YOUR_CLIENT_ID&#34;,&#34;client_secret&#34;:&#34;YOUR_CLIENT_SECRET&#34;}&#39;</span>
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<p>Phản hồi chứa một <code>access_token</code> được sử dụng trong các cuộc gọi tiếp theo.</p>
<h3 id="2-tải-lên-các-tệp-nguồn">2. Tải lên các tệp nguồn</h3>
<p>Lặp lại bước này cho mỗi tệp DOCX mà bạn muốn hợp nhất.</p>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/upload?path=documents/input1.docx&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>-H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>-H <span style="color:#e6db74">&#34;Content-Type: application/octet-stream&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>--data-binary <span style="color:#e6db74">&#34;@path/to/input1.docx&#34;</span>
</span></span></code></pre></div><h3 id="3-thực-hiện-thao-tác-hợp-nhất">3. Thực hiện thao tác hợp nhất</h3>
<!--[CODE_SNIPPET_START]-->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/merger/merge&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>-H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>-H <span style="color:#e6db74">&#34;Content-Type: application/json&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>-d <span style="color:#e6db74">&#39;{
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    &#34;documents&#34;: [
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">        {&#34;fileInfo&#34;: {&#34;filePath&#34;: &#34;documents/input1.docx&#34;}},
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">        {&#34;fileInfo&#34;: {&#34;filePath&#34;: &#34;documents/input2.docx&#34;}},
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">        {&#34;fileInfo&#34;: {&#34;filePath&#34;: &#34;documents/input3.docx&#34;}}
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    ],
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">    &#34;outputPath&#34;: &#34;documents/combined_output.docx&#34;
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">}&#39;</span>
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<p>API trả về đường dẫn của tệp đã hợp nhất.</p>
<h3 id="4-tải-xuống-tài-liệu-đã-hợp-nhất">4. Tải xuống tài liệu đã hợp nhất</h3>
<!--[CODE_SNIPPET_START]-->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>curl -X GET <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/download?path=documents/combined_output.docx&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>-H <span style="color:#e6db74">&#34;Authorization: Bearer YOUR_ACCESS_TOKEN&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>-o combined_output.docx
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<p>Để biết thêm chi tiết về payload yêu cầu và các tùy chọn, xem <a href="https://docs.groupdocs.cloud/merger/">tài liệu API chính thức</a>.</p>
<h2 id="cách-hoạt-động-của-việc-hợp-nhất-nhiều-tài-liệu-word-trong-nodejs">Cách hoạt động của việc hợp nhất nhiều tài liệu Word trong Node.JS</h2>
<p>SDK trừu tượng hóa quá trình hợp nhất thành một vài bước logic:</p>
<ol>
<li><strong>Tạo cấu hình</strong> - <code>new GroupDocsMergerCloud.Configuration(clientId, clientSecret)</code> tạo ngữ cảnh xác thực. Xem tham chiếu lớp trong <a href="https://reference.groupdocs.cloud/merger/">API Reference</a>.</li>
</ol>
<!--[CODE_SNIPPET_START]-->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">config</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">Configuration</span>(<span style="color:#a6e22e">clientId</span>, <span style="color:#a6e22e">clientSecret</span>);
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
<ol start="2">
<li>
<p><strong>API Instance</strong> - <code>new GroupDocsMergerCloud.MergeApi(config)</code> cung cấp quyền truy cập vào các thao tác hợp nhất.</p>
<!--[CODE_SNIPPET_START]-->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">mergeApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">MergeApi</span>(<span style="color:#a6e22e">config</span>);
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
</li>
<li>
<p><strong>Các mục tài liệu</strong> - Mỗi tệp nguồn được bao bọc trong một <code>DocumentEntry</code> chứa một <code>FileInfo</code> với đường dẫn tệp.</p>
<!--[CODE_SNIPPET_START]-->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">documentEntries</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">inputFiles</span>.<span style="color:#a6e22e">map</span>(<span style="color:#a6e22e">path</span> =&gt; {
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">return</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">Models</span>.<span style="color:#a6e22e">DocumentEntry</span>({
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">fileInfo</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">Models</span>.<span style="color:#a6e22e">FileInfo</span>({ <span style="color:#a6e22e">filePath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">path</span> })
</span></span><span style="display:flex;"><span>    });
</span></span><span style="display:flex;"><span>});
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
</li>
<li>
<p><strong>Yêu cầu hợp nhất</strong> - <code>MergeDocumentsRequest</code> gói các mục và đường dẫn đầu ra mong muốn.</p>
<!--[CODE_SNIPPET_START]-->  
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">mergeRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsMergerCloud</span>.<span style="color:#a6e22e">Models</span>.<span style="color:#a6e22e">MergeDocumentsRequest</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">documents</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">documentEntries</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">outputPath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">outputFile</span>
</span></span><span style="display:flex;"><span>});
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
</li>
<li>
<p><strong>Thực thi</strong> - <code>mergeApi.mergeDocuments(mergeRequest)</code> gửi yêu cầu tới dịch vụ đám mây. Promise trả về một đối tượng kết quả chứa đường dẫn tệp đầu ra.</p>
<!--[CODE_SNIPPET_START]-->
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">result</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">mergeApi</span>.<span style="color:#a6e22e">mergeDocuments</span>(<span style="color:#a6e22e">mergeRequest</span>);
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">`Merge completed successfully. Output file: </span><span style="color:#e6db74">${</span><span style="color:#a6e22e">result</span>.<span style="color:#a6e22e">path</span><span style="color:#e6db74">}</span><span style="color:#e6db74">`</span>);
</span></span></code></pre></div><!--[CODE_SNIPPET_END]-->
</li>
</ol>
<p>Các bước này cùng nhau cho phép bạn kết hợp nhiều tài liệu Word một cách hiệu quả mà không cần xử lý các luồng tệp cấp thấp.</p>
<h2 id="chuẩn-bị-môi-trường-cho-groupdocsmerger">Chuẩn bị môi trường cho GroupDocs.Merger</h2>
<ol>
<li><strong>Cài đặt SDK</strong></li>
</ol>
<div class="highlight"><pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>npm install groupdocs-merger-cloud
</span></span></code></pre></div><p>Gói có sẵn từ <a href="https://releases.groupdocs.cloud/merger/nodejs/">trang tải xuống chính thức</a>.</p>
<ol start="2">
<li>
<p><strong>Node.js Version</strong> - Đảm bảo bạn đang chạy Node.js 12 hoặc mới hơn.</p>
</li>
<li>
<p><strong>Cấu hình thông tin xác thực</strong> - Thay thế <code>YOUR_CLIENT_ID</code> và <code>YOUR_CLIENT_SECRET</code> trong mã bằng các giá trị từ tài khoản GroupDocs Cloud của bạn.</p>
</li>
<li>
<p><strong>Tạo Thư Mục Dự Án</strong> - Đặt các tệp DOCX nguồn vào thư mục con <code>documents/</code> như được minh họa trong ví dụ.</p>
</li>
</ol>
<p>Với các bước này đã hoàn thành, bạn đã sẵn sàng để chạy script hợp nhất hoặc gọi các endpoint REST.</p>
<h2 id="kết-luận">Kết luận</h2>
<p>Kết hợp nhiều tài liệu Word trong Node.JS trở nên đơn giản với <a href="https://products.groupdocs.cloud/merger/nodejs/">GroupDocs.Merger Cloud SDK for Node.js</a>. SDK xử lý việc tải lên tệp, logic hợp nhất và tạo đầu ra, cho phép bạn tập trung vào logic nghiệp vụ thay vì thao tác tệp cấp thấp. Hãy nhớ đảm bảo có giấy phép phù hợp cho việc sử dụng trong môi trường sản xuất; bạn có thể bắt đầu với một <a href="https://purchase.groupdocs.cloud/temporary-license/">giấy phép tạm thời</a> và nâng cấp lên đăng ký đầy đủ khi nhu cầu của bạn tăng lên. Bắt đầu hợp nhất ngay hôm nay và tối ưu hoá quy trình công việc tài liệu của bạn.</p>
<h2 id="câu-hỏi-thường-gặp">Câu hỏi thường gặp</h2>
<ul>
<li>
<p><strong>Làm thế nào để kết hợp nhiều tài liệu Word trong Node.JS bằng SDK?</strong><br>
Sử dụng lớp <code>MergeApi</code> để tạo một <code>MergeDocumentsRequest</code> liệt kê mỗi tệp DOCX dưới dạng <code>DocumentEntry</code>. SDK sẽ hợp nhất chúng theo thứ tự đã cung cấp và lưu kết quả vào đường dẫn đầu ra đã chỉ định.</p>
</li>
<li>
<p><strong>Liệu có thể hợp nhất các tệp PDF lại với cùng một SDK không?</strong><br>
Có, Merger SDK hỗ trợ <a href="https://docs.fileformat.com/pdf">PDF</a>, DOCX, <a href="https://docs.fileformat.com/word-processing/odt/">ODT</a>, và một số định dạng khác. Chỉ cần thay đổi phần mở rộng tệp trong mảng <code>inputFiles</code> và SDK sẽ tự động xử lý việc chuyển đổi. Xem <a href="https://docs.groupdocs.cloud/merger/">tài liệu chính thức</a> để biết chi tiết về các định dạng.</p>
</li>
<li>
<p><strong>Giới hạn về số lượng tài liệu tôi có thể hợp nhất trong một yêu cầu là bao nhiêu?</strong><br>
Dịch vụ đám mây áp dụng giới hạn kích thước thay vì số lượng cố định. Miễn là tổng kích thước vẫn nằm trong hạn mức tài khoản của bạn, bạn có thể hợp nhất hàng chục tệp. Đối với các lô rất lớn, hãy cân nhắc tải các tệp lên lưu trữ GroupDocs trước và tham chiếu chúng bằng ID.</p>
</li>
<li>
<p><strong>Tôi có cần lo lắng về giấy phép cho phát triển so với sản xuất không?</strong><br>
Phát triển và kiểm thử có thể sử dụng giấy phép tạm thời được lấy từ <a href="https://purchase.groupdocs.cloud/temporary-license/">trang giấy phép tạm thời</a>. Đối với triển khai sản xuất, mua giấy phép đầy đủ để mở khóa số lần hợp nhất không giới hạn và hỗ trợ ưu tiên.</p>
</li>
</ul>
<h2 id="đọc-thêm">Đọc thêm</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/vi/merger/password-protect-zip-file-using-password-protection-software/">Bảo vệ tệp ZIP bằng phần mềm bảo vệ mật khẩu</a></li>
<li><a href="https://blog.groupdocs.cloud/vi/merger/password-protect-excel-using-password-protection-service/">Bảo vệ Excel bằng dịch vụ bảo vệ mật khẩu</a></li>
<li><a href="https://blog.groupdocs.cloud/vi/merger/combine-word-documents-in-csharp/">Kết hợp tài liệu Word trong C#</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
