<?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>nodejs document comparison on Document Processing REST APIs | GroupDocs Cloud</title>
    <link>https://blog-qa.groupdocs.cloud/pl/tag/nodejs-document-comparison/</link>
    <description>Recent content in nodejs document comparison on Document Processing REST APIs | GroupDocs Cloud</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>pl</language>
    <lastBuildDate>Fri, 18 Sep 2026 12:26:15 +0000</lastBuildDate><atom:link href="https://blog-qa.groupdocs.cloud/pl/tag/nodejs-document-comparison/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Jak porównać dokumenty Word w Node.JS</title>
      <link>https://blog-qa.groupdocs.cloud/pl/comparison/how-to-compare-word-documents-in-nodejs/</link>
      <pubDate>Fri, 18 Sep 2026 12:26:15 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/pl/comparison/how-to-compare-word-documents-in-nodejs/</guid>
      <description>Dowiedz się, jak porównywać dokumenty Word w Node.JS przy użyciu GroupDocs.Comparison Cloud SDK. Ten przewodnik przeprowadzi Cię przez konfigurację, przykład kodu i najlepsze praktyki.</description>
      <content:encoded><![CDATA[<p>Porównywanie plików Word programowo jest częstym wymogiem dla usług backendowych, które muszą wykrywać zmiany, generować raporty z rewizji lub egzekwować polityki dokumentów. <a href="https://products.groupdocs.cloud/comparison/nodejs/">GroupDocs.Comparison Cloud SDK for Node.js</a> zapewnia potężne API, które upraszcza to zadanie dla aplikacji Node.js. W tym przewodniku dowiesz się, jak skonfigurować SDK, przeprowadzić pełne porównanie dwóch plików <a href="https://docs.fileformat.com/word-processing/docx/">DOCX</a>, używać równoważnych poleceń cURL, zrozumieć każdy element implementacji oraz stosować zalecenia najlepszych praktyk, aby utrzymać rozwiązanie niezawodne i bezpieczne.</p>
<h2 id="pełny-przykład-kodu-porównaj-dokumenty-word-w-nodejs">Pełny przykład kodu: Porównaj dokumenty Word w Node.JS</h2>
<p>Poniższy przykład demonstruje pełny przepływ pracy end‑to‑end porównywania dwóch dokumentów Word przy użyciu GroupDocs.Comparison 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">GroupDocsComparisonCloud</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;@groupdocs/comparison-cloud&#34;</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">fs</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;fs&#34;</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">path</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;path&#34;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ==== Authentication =========================================================
</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">GroupDocsComparisonCloud</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">compareApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">CompareApi</span>(<span style="color:#a6e22e">config</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">storageApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">StorageApi</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">// ==== File definitions =======================================================
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">sourceFileName</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;document1.docx&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">targetFileName</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;document2.docx&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">resultFileName</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;comparison_result.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">sourceFilePath</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">path</span>.<span style="color:#a6e22e">resolve</span>(<span style="color:#a6e22e">__dirname</span>, <span style="color:#a6e22e">sourceFileName</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">targetFilePath</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">path</span>.<span style="color:#a6e22e">resolve</span>(<span style="color:#a6e22e">__dirname</span>, <span style="color:#a6e22e">targetFileName</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ==== Main async function ====================================================
</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:#75715e">// ---- Upload source document -----------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">sourceData</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">readFileSync</span>(<span style="color:#a6e22e">sourceFilePath</span>);
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">uploadSourceReq</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">UploadFileRequest</span>({
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">sourceFileName</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">file</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">sourceData</span>
</span></span><span style="display:flex;"><span>        });
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">uploadFile</span>(<span style="color:#a6e22e">uploadSourceReq</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ---- Upload target document -----------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">targetData</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">readFileSync</span>(<span style="color:#a6e22e">targetFilePath</span>);
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">uploadTargetReq</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">UploadFileRequest</span>({
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">targetFileName</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">file</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">targetData</span>
</span></span><span style="display:flex;"><span>        });
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">uploadFile</span>(<span style="color:#a6e22e">uploadTargetReq</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ---- Prepare comparison options --------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">compareOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">CompareOptions</span>({
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">sourceFile</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">FileInfo</span>({ <span style="color:#a6e22e">filePath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">sourceFileName</span> }),
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">targetFiles</span><span style="color:#f92672">:</span> [<span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">FileInfo</span>({ <span style="color:#a6e22e">filePath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">targetFileName</span> })],
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">outputPath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">resultFileName</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#75715e">// optional: you can set settings like generateSummaryPage, showDeletedContent, etc.
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></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">compareRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">CompareDocumentRequest</span>({
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">compareOptions</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">compareOptions</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 comparison -----------------------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">compareResult</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">compareApi</span>.<span style="color:#a6e22e">compareDocument</span>(<span style="color:#a6e22e">compareRequest</span>);
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">&#34;Comparison completed. Result stored at:&#34;</span>, <span style="color:#a6e22e">compareResult</span>.<span style="color:#a6e22e">path</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ---- (Optional) Clean up uploaded files --------------------------------
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>        <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">deleteFile</span>(<span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">DeleteFileRequest</span>({ <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">sourceFileName</span> }));
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">deleteFile</span>(<span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">DeleteFileRequest</span>({ <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">targetFileName</span> }));
</span></span><span style="display:flex;"><span>        <span style="color:#75715e">// Note: result file remains in storage; you can download it if needed.
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></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 comparison:&#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>Uwaga:</strong> Ten przykład kodu demonstruje podstawową funkcjonalność. Przed użyciem go w swoim projekcie upewnij się, że zaktualizowałeś wszystkie ścieżki plików i wartości konfiguracyjne, aby odpowiadały rzeczywistemu środowisku, sprawdź, czy wszystkie wymagane zależności są prawidłowo zainstalowane, i dokładnie przetestuj w środowisku deweloperskim. Jeśli napotkasz jakiekolwiek problemy, odwołaj się do <a href="https://docs.groupdocs.cloud/comparison/">oficjalnej dokumentacji</a> lub skontaktuj się z <a href="https://forum.groupdocs.cloud/c/comparison/12">zespołem wsparcia</a> w celu uzyskania pomocy.</p>
</blockquote>
<h2 id="wykonaj-porównanie-dokumentów-przy-użyciu-curl-i-rest-api">Wykonaj porównanie dokumentów przy użyciu cURL i REST API</h2>
<p>Jeśli wolisz podejście niezależne od języka, możesz osiągnąć ten sam wynik przy użyciu zwykłych żądań HTTP. Poniżej znajdują się niezbędne polecenia cURL.</p>
<ol>
<li><strong>Uwierzytelnij i uzyskaj token dostępu</strong><br>
Zastąp <code>YOUR_CLIENT_ID</code> i <code>YOUR_CLIENT_SECRET</code> swoimi danymi uwierzytelniającymi.</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>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/oauth2/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/x-www-form-urlencoded&#34;</span> <span style="color:#ae81ff">\
</span></span></span><span style="display:flex;"><span><span style="color:#ae81ff"></span>     -d <span style="color:#e6db74">&#34;grant_type=client_credentials&amp;client_id=YOUR_CLIENT_ID&amp;client_secret=YOUR_CLIENT_SECRET&#34;</span>
</span></span></code></pre></div><ol start="2">
<li><strong>Prześlij plik źródłowy DOCX</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>curl -X PUT <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/document1.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/document1.docx&#34;</span>
</span></span></code></pre></div><ol start="3">
<li><strong>Prześlij docelowy plik DOCX</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>curl -X PUT <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/document2.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/document2.docx&#34;</span>
</span></span></code></pre></div><ol start="4">
<li><strong>Wykonaj operację porównania</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>curl -X POST <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/comparison/compare&#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;sourceFile&#34;: { &#34;filePath&#34;: &#34;document1.docx&#34; },
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;targetFiles&#34;: [{ &#34;filePath&#34;: &#34;document2.docx&#34; }],
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;outputPath&#34;: &#34;comparison_result.docx&#34;
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">         }&#39;</span>
</span></span></code></pre></div><ol start="5">
<li><strong>Pobierz wynikowy plik porównania</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>curl -X GET <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/comparison_result.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 comparison_result.docx
</span></span></code></pre></div><p>Aby uzyskać więcej informacji na temat ładunków żądań i formatów odpowiedzi, zobacz <a href="https://reference.groupdocs.cloud/comparison/">oficjalną dokumentację API</a>.</p>
<h2 id="zrozumienie-porównywania-dokumentów-word-w-kodzie-nodejs">Zrozumienie porównywania dokumentów Word w kodzie Node.JS</h2>
<p>Poniżej znajduje się szczegółowy opis krok po kroku pełnego przykładu:</p>
<ol>
<li><strong>Importuj SDK i moduły Node.js</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-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;@groupdocs/comparison-cloud&#34;</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">fs</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;fs&#34;</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">path</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;path&#34;</span>);
</span></span></code></pre></div><p>Przestrzeń nazw <code>GroupDocsComparisonCloud</code> zapewnia dostęp do wszystkich klas API.</p>
<ol start="2">
<li><strong>Utwórz konfigurację z poświadczeniami klienta</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-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">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">Configuration</span>(<span style="color:#a6e22e">clientId</span>, <span style="color:#a6e22e">clientSecret</span>);
</span></span></code></pre></div><p>Ten obiekt uwierzytelnia każde kolejne wywołanie API.</p>
<ol start="3">
<li><strong>Utwórz instancję CompareApi i StorageApi</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-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">compareApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">CompareApi</span>(<span style="color:#a6e22e">config</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">storageApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">StorageApi</span>(<span style="color:#a6e22e">config</span>);
</span></span></code></pre></div><p><code>CompareApi</code> obsługuje porównanie, natomiast <code>StorageApi</code> zarządza przesyłaniem i usuwaniem plików. Zobacz <a href="https://reference.groupdocs.cloud/comparison/">odniesienie do API</a> po szczegóły metod.</p>
<ol start="4">
<li><strong>Prześlij plik źródłowy i docelowy DOCX</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-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">uploadSourceReq</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">UploadFileRequest</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">sourceFileName</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">file</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">sourceData</span>
</span></span><span style="display:flex;"><span>});
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">uploadFile</span>(<span style="color:#a6e22e">uploadSourceReq</span>);
</span></span></code></pre></div><p>Ten sam wzorzec jest powtórzony dla pliku docelowego.</p>
<ol start="5">
<li><strong>Skonfiguruj CompareOptions i uruchom porównanie</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-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">compareOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">CompareOptions</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">sourceFile</span><span style="color:#f92672">:</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">FileInfo</span>({ <span style="color:#a6e22e">filePath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">sourceFileName</span> }),
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">targetFiles</span><span style="color:#f92672">:</span> [<span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">FileInfo</span>({ <span style="color:#a6e22e">filePath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">targetFileName</span> })],
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">outputPath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">resultFileName</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">compareRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">CompareDocumentRequest</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">compareOptions</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">compareOptions</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">compareResult</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">compareApi</span>.<span style="color:#a6e22e">compareDocument</span>(<span style="color:#a6e22e">compareRequest</span>);
</span></span></code></pre></div><p><code>CompareOptions</code> pozwala precyzyjnie dostroić operację (np. wygenerować stronę podsumowującą). Obiekt wynikowy zawiera ścieżkę do wygenerowanego dokumentu porównania.</p>
<ol start="6">
<li><strong>Czyszczenie tymczasowych plików</strong> (opcjonalnie)</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-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">deleteFile</span>(<span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">DeleteFileRequest</span>({ <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">sourceFileName</span> }));
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">deleteFile</span>(<span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsComparisonCloud</span>.<span style="color:#a6e22e">DeleteFileRequest</span>({ <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">targetFileName</span> }));
</span></span></code></pre></div><p>Usuwanie przesłanych oryginałów utrzymuje porządek w magazynie.</p>
<h2 id="wymagania-wstępne-i-konfiguracja-dla-groupdocscomparison">Wymagania wstępne i konfiguracja dla GroupDocs.Comparison</h2>
<ol>
<li><strong>Wersja Node.js</strong> - Upewnij się, że używasz Node 14 lub nowszego.</li>
<li><strong>Uzyskaj poświadczenia klienta</strong> - Zarejestruj się w portalu GroupDocs Cloud, aby uzyskać <code>clientId</code> i <code>clientSecret</code>.</li>
<li><strong>Zainstaluj 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-comparison-cloud
</span></span></code></pre></div><ol start="4">
<li><strong>(Opcjonalnie) Pobierz przykładowy projekt</strong> - Możesz sklonować repozytorium ze <a href="https://github.com/groupdocs-comparison-cloud/groupdocs-comparison-cloud-node">strony GitHub</a>.</li>
<li><strong>Skonfiguruj swoje środowisko</strong> - Ustaw poświadczenia jako zmienne środowiskowe lub zamień symbole zastępcze w kodzie.</li>
</ol>
<p>Aby zobaczyć pełną listę dostępnych plików binarnych, zobacz <a href="https://releases.groupdocs.cloud/comparison/nodejs/">stronę pobierania</a>.</p>
<h2 id="najlepsze-praktyki-efektywnego-porównywania-dokumentów-word">Najlepsze praktyki efektywnego porównywania dokumentów Word</h2>
<ul>
<li><strong>Sprawdź pliki wejściowe</strong> - Sprawdź rozmiar i format pliku przed przesłaniem, aby uniknąć niepotrzebnych wywołań API.</li>
<li><strong>Ponowne użycie sesji przechowywania</strong> - Prześlij pliki raz i ponownie użyj ich ścieżek w wielu porównaniach, aby zmniejszyć opóźnienia.</li>
<li><strong>Włącz stronę podsumowania tylko w razie potrzeby</strong> - Generowanie strony podsumowania zwiększa czas przetwarzania; wyłącz ją przy prostych sprawdzeniach różnic.</li>
<li><strong>Obsługa dużych dokumentów asynchronicznie</strong> - Dla plików DOCX większych niż 10 MB rozważ odpytywanie statusu zadania zamiast czekania synchronicznego.</li>
<li><strong>Zabezpiecz poświadczenia</strong> - Przechowuj <code>clientId</code> i <code>clientSecret</code> w zmiennych środowiskowych lub menedżerze tajemnic; nigdy nie zapisuj ich na stałe w kodzie.</li>
</ul>
<h2 id="wnioski">Wnioski</h2>
<p>Porównywanie dokumentów Word w Node.JS staje się proste dzięki <a href="https://products.groupdocs.cloud/comparison/nodejs/">GroupDocs.Comparison Cloud SDK for Node.js</a>. Postępując zgodnie z krokami instalacji, używając dostarczonego przykładu kodu oraz opcjonalnie korzystając z REST API z cURL, możesz zintegrować solidne porównywanie dokumentów z dowolną usługą backendową. Pamiętaj, aby zabezpieczyć swoje dane uwierzytelniające, usuwać pliki tymczasowe i dostosowywać opcje porównywania w celu uzyskania lepszej wydajności. W środowiskach produkcyjnych potrzebna będzie licencjonowana wersja; szczegóły cenowe są dostępne na stronie produktu, a tymczasową licencję do oceny możesz uzyskać ze <a href="https://purchase.groupdocs.cloud/temporary-license/">strony tymczasowej licencji</a>. Rozpocznij eksperymenty już dziś i wprowadź niezawodne możliwości różnicowania dokumentów do swoich aplikacji Node.js.</p>
<h2 id="faqs">FAQs</h2>
<ul>
<li>
<p><strong>Jak porównać dokumenty Word w Node.JS bez pisania kodu?</strong><br>
Możesz użyć tej samej operacji za pomocą wywołań REST. Przykłady cURL w tym artykule pokazują dokładną kolejność: uwierzytelnienie, przesłanie plików, wywołanie endpointu porównania i pobranie wyniku.</p>
</li>
<li>
<p><strong>Jakie formaty plików są obsługiwane przy porównywaniu?</strong><br>
SDK obsługuje DOCX, <a href="https://docs.fileformat.com/word-processing/doc/">DOC</a>, <a href="https://docs.fileformat.com/word-processing/odt/">ODT</a>, <a href="https://docs.fileformat.com/word-processing/rtf/">RTF</a>, oraz <a href="https://docs.fileformat.com/word-processing/txt/">TXT</a> oraz inne. Wszystkie nazwy formatów nie rozróżniają wielkości liter, ale są dokumentowane wielkimi literami (np. DOCX) w <a href="https://reference.groupdocs.cloud/comparison/">referencji API</a>.</p>
</li>
<li>
<p><strong>Czy mogę porównać więcej niż dwa dokumenty jednocześnie?</strong><br>
Tak. Tablica <code>targetFiles</code> w <code>CompareOptions</code> może zawierać wiele obiektów <code>FileInfo</code>, co pozwala porównać plik źródłowy z kilkoma plikami docelowymi w jednym żądaniu.</p>
</li>
<li>
<p><strong>Czy istnieje sposób na dostosowanie stylu wizualnego wyniku porównania?</strong><br>
SDK oferuje ustawienia takie jak <code>showDeletedContent</code>, <code>showInsertedContent</code> i <code>generateSummaryPage</code>. Dostosuj te właściwości w <code>CompareOptions</code>, aby kontrolować sposób podświetlania zmian. Odwołaj się do <a href="https://docs.groupdocs.cloud/comparison/">oficjalnej dokumentacji</a> po pełną listę opcji.</p>
</li>
</ul>
<h2 id="czytaj-więcej">Czytaj więcej</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/pl/comparison/compare-word-documents-using-rest-api-in-node-js/">Porównaj dokumenty Word przy użyciu REST API w Node.js</a></li>
<li><a href="https://blog.groupdocs.cloud/pl/comparison/compare-word-documents-using-python/">Porównaj dokumenty Word przy użyciu Pythona</a></li>
<li><a href="https://blog.groupdocs.cloud/pl/comparison/compare-word-documents-using-csharp/">Porównaj dokumenty Word online przy użyciu C# .NET | Porównanie plików DOCX</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
