<?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 rest api on Document Processing REST APIs | GroupDocs Cloud</title>
    <link>https://blog-qa.groupdocs.cloud/fa/tag/nodejs-rest-api/</link>
    <description>Recent content in nodejs rest api on Document Processing REST APIs | GroupDocs Cloud</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>fa</language>
    <lastBuildDate>Wed, 21 Oct 2026 13:18:44 +0000</lastBuildDate><atom:link href="https://blog-qa.groupdocs.cloud/fa/tag/nodejs-rest-api/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>حذف اشیاء حاشیه‌نویسی از PDF با استفاده از REST در Node.JS</title>
      <link>https://blog-qa.groupdocs.cloud/fa/annotation/remove-annotation-objects-from-pdf-with-rest-in-nodejs/</link>
      <pubDate>Wed, 21 Oct 2026 13:18:44 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/fa/annotation/remove-annotation-objects-from-pdf-with-rest-in-nodejs/</guid>
      <description>نحوه حذف اشیاء Annotation از PDF با استفاده از REST در Node.JS با بهره‌گیری از GroupDocs.Annotation Cloud SDK را بیاموزید. راهنمای گام به گام با کد، cURL و روش‌ها.</description>
      <content:encoded><![CDATA[<p>حذف یادداشت‌ها، هایلایت‌ها یا علامت‌های جوهری ناخواسته از PDFها یک نیاز مکرر هنگام آماده‌سازی اسناد تمیز برای توزیع است. <a href="https://products.groupdocs.cloud/annotation/nodejs/">GroupDocs.Annotation Cloud SDK for Node.js</a> یک کتابخانه قدرتمند مبتنی بر REST ارائه می‌دهد که به شما امکان مدیریت حاشیه‌نویسی‌های <a href="https://docs.fileformat.com/pdf">PDF</a> را به‌صورت برنامه‌نویسی می‌دهد. این راهنما به شما نشان می‌دهد چگونه اشیای Annotation را از PDF با استفاده از REST در Node.JS به‌صورت گام‌به‌گام حذف کنید. شما یک مثال کامل کد، دستورات cURL معادل، نکات پیکربندی، و توصیه‌های بهترین روش را خواهید دید تا حذف حاشیه‌نویسی را در سرویس‌های خود یکپارچه کنید.</p>
<h2 id="مثال-کامل-کارآمد-برای-حذف-اشیاء-حاشیهنویسی-از-pdf-با-استفاده-از-rest-در-nodejs">مثال کامل کارآمد برای حذف اشیاء حاشیه‌نویسی از PDF با استفاده از REST در Node.JS</h2>
<p>این مثال نشان می‌دهد که چگونه یک PDF را بارگذاری کنید، تمام حاشیه‌نویسی‌های آن را حذف کنید و فایل پاک‌سازی‌شده را با استفاده از GroupDocs.Annotation SDK دانلود کنید.</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">fs</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#39;fs&#39;</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">&#39;path&#39;</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;@groupdocs/annotation-cloud&#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">GroupDocsAnnotationCloud</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">annotationsApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</span>.<span style="color:#a6e22e">AnnotationsApi</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">GroupDocsAnnotationCloud</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">// ==== Local &amp; Remote 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">localInputPath</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:#e6db74">&#34;input.pdf&#34;</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">localOutputPath</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:#e6db74">&#34;output.pdf&#34;</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">remoteFilePath</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;input.pdf&#34;</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// ==== Main workflow ==========================================================
</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:#75715e">// 1. Upload PDF to GroupDocs Cloud storage
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">fileBytes</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">readFileSync</span>(<span style="color:#a6e22e">localInputPath</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">uploadRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</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">remoteFilePath</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">file</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">fileBytes</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">uploadRequest</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// 2. Build FileInfo object for the uploaded PDF
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">fileInfo</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</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">remoteFilePath</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">// 3. Retrieve all existing annotations
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">getAnnotationsRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</span>.<span style="color:#a6e22e">GetAnnotationsRequest</span>({
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">fileInfo</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">fileInfo</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">annotationsResult</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">annotationsApi</span>.<span style="color:#a6e22e">getAnnotations</span>(<span style="color:#a6e22e">getAnnotationsRequest</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">annotationIds</span> <span style="color:#f92672">=</span> (<span style="color:#a6e22e">annotationsResult</span>.<span style="color:#a6e22e">annotations</span> <span style="color:#f92672">||</span> []).<span style="color:#a6e22e">map</span>(<span style="color:#a6e22e">a</span> =&gt; <span style="color:#a6e22e">a</span>.<span style="color:#a6e22e">id</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// 4. Delete all annotations (if any)
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">if</span> (<span style="color:#a6e22e">annotationIds</span>.<span style="color:#a6e22e">length</span> <span style="color:#f92672">&gt;</span> <span style="color:#ae81ff">0</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">deleteRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</span>.<span style="color:#a6e22e">DeleteAnnotationsRequest</span>({
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">fileInfo</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">fileInfo</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">annotationIds</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">annotationIds</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">annotationsApi</span>.<span style="color:#a6e22e">deleteAnnotations</span>(<span style="color:#a6e22e">deleteRequest</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">// 5. Download the cleaned PDF back to local storage
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">downloadRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</span>.<span style="color:#a6e22e">DownloadFileRequest</span>({
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">remoteFilePath</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">fileStream</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">downloadFile</span>(<span style="color:#a6e22e">downloadRequest</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">writeFileSync</span>(<span style="color:#a6e22e">localOutputPath</span>, <span style="color:#a6e22e">fileStream</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">`All annotations removed. Clean file saved to </span><span style="color:#e6db74">${</span><span style="color:#a6e22e">localOutputPath</span><span style="color:#e6db74">}</span><span style="color:#e6db74">`</span>);
</span></span><span style="display:flex;"><span>})();
</span></span></code></pre></div><blockquote>
<p><strong>Note:</strong> این مثال کد عملکرد اصلی را نشان می‌دهد. قبل از استفاده از آن در پروژه خود، مطمئن شوید که مسیرهای فایل و مقادیر پیکربندی را به‌گونه‌ای به‌روز کنید که با محیط واقعی شما مطابقت داشته باشد، اطمینان حاصل کنید که تمام وابستگی‌های مورد نیاز به‌درستی نصب شده‌اند و به‌طور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به <a href="https://docs.groupdocs.cloud/annotation/">مستندات رسمی</a> مراجعه کنید یا برای دریافت کمک به <a href="https://forum.groupdocs.cloud/c/annotation/10">تیم پشتیبانی</a> مراجعه کنید.</p>
</blockquote>
<h2 id="حذف-حاشیهنویسیهای-pdf-از-طریق-rest-api-با-استفاده-از-curl">حذف حاشیه‌نویسی‌های PDF از طریق REST API با استفاده از cURL</h2>
<p>در زیر دستورات cURL آمده است که همان جریان کار حذف حاشیه‌نویسی را از طریق GroupDocs.Annotation Cloud REST endpoints انجام می‌دهند.</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><span style="color:#75715e"># 1. Obtain an access token</span>
</span></span><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">&#34;{\&#34;client_id\&#34;:\&#34;YOUR_CLIENT_ID\&#34;,\&#34;client_secret\&#34;:\&#34;YOUR_CLIENT_SECRET\&#34;}&#34;</span>
</span></span></code></pre></div><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><span style="color:#75715e"># 2. Upload the source PDF</span>
</span></span><span style="display:flex;"><span>curl -X PUT <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/input.pdf&#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/pdf&#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;@input.pdf&#34;</span>
</span></span></code></pre></div><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><span style="color:#75715e"># 3. Retrieve annotation IDs</span>
</span></span><span style="display:flex;"><span>curl -X GET <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/annotation/annotations?filePath=input.pdf&#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></span></code></pre></div><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><span style="color:#75715e"># 4. Delete all retrieved annotations</span>
</span></span><span style="display:flex;"><span>curl -X DELETE <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/annotation/annotations?filePath=input.pdf&#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">&#34;{\&#34;annotationIds\&#34;:[\&#34;id1\&#34;,\&#34;id2\&#34;]}&#34;</span>
</span></span></code></pre></div><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><span style="color:#75715e"># 5. Download the cleaned PDF</span>
</span></span><span style="display:flex;"><span>curl -X GET <span style="color:#e6db74">&#34;https://api.groupdocs.cloud/v2.0/storage/file/input.pdf&#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 output.pdf
</span></span></code></pre></div><p>برای دریافت فهرست کامل نقاط انتهایی و پارامترها، به <a href="https://reference.groupdocs.cloud/annotation/">مستندات رسمی API</a> مراجعه کنید.</p>
<h2 id="نحوه-حذف-اشیاء-حاشیهنویسی-از-pdf-با-rest-در-nodejs">نحوه حذف اشیاء حاشیه‌نویسی از PDF با REST در Node.JS</h2>
<ol>
<li>
<p><strong>راه‌اندازی احراز هویت</strong> - کلاس <code>Configuration</code> با <code>clientId</code> و <code>clientSecret</code> شما نمونه‌سازی می‌شود و یک زمینهٔ احراز هویت برای تمام فراخوانی‌های 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-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">GroupDocsAnnotationCloud</span>.<span style="color:#a6e22e">Configuration</span>(<span style="color:#a6e22e">clientId</span>, <span style="color:#a6e22e">clientSecret</span>);
</span></span></code></pre></div></li>
<li>
<p><strong>بارگذاری فایل</strong> - <code>UploadFileRequest</code> بایت‌های PDF محلی را به ذخیره‌سازی GroupDocs Cloud ارسال می‌کند. متد <code>storageApi.uploadFile</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-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">uploadRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</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">remoteFilePath</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">file</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">fileBytes</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">uploadRequest</span>);
</span></span></code></pre></div></li>
<li>
<p><strong>دریافت حاشیه‌نویسی‌ها</strong> - <code>GetAnnotationsRequest</code> یک شی درخواست با مرجع <code>FileInfo</code> می‌سازد. فراخوانی <code>annotationsApi.getAnnotations</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-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">getAnnotationsRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</span>.<span style="color:#a6e22e">GetAnnotationsRequest</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">fileInfo</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">fileInfo</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">annotationsResult</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">annotationsApi</span>.<span style="color:#a6e22e">getAnnotations</span>(<span style="color:#a6e22e">getAnnotationsRequest</span>);
</span></span></code></pre></div></li>
<li>
<p><strong>حذف حاشیه‌نویسی‌ها</strong> - اگر شناسه‌هایی وجود داشته باشند، <code>DeleteAnnotationsRequest</code> پر می‌شود و به <code>annotationsApi.deleteAnnotations</code> ارسال می‌شود، که حاشیه‌نویسی‌ها را به‌صورت دائمی از PDF ذخیره‌شده حذف می‌کند.</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">deleteRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</span>.<span style="color:#a6e22e">DeleteAnnotationsRequest</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">fileInfo</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">fileInfo</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">annotationIds</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">annotationIds</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">annotationsApi</span>.<span style="color:#a6e22e">deleteAnnotations</span>(<span style="color:#a6e22e">deleteRequest</span>);
</span></span></code></pre></div></li>
<li>
<p><strong>دانلود PDF تمیز</strong> - در نهایت، <code>DownloadFileRequest</code> فایل به‌روز شده را دریافت می‌کند و <code>fs.writeFileSync</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-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">downloadRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</span>.<span style="color:#a6e22e">DownloadFileRequest</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">path</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">remoteFilePath</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">fileStream</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">storageApi</span>.<span style="color:#a6e22e">downloadFile</span>(<span style="color:#a6e22e">downloadRequest</span>);
</span></span><span style="display:flex;"><span><span style="color:#a6e22e">fs</span>.<span style="color:#a6e22e">writeFileSync</span>(<span style="color:#a6e22e">localOutputPath</span>, <span style="color:#a6e22e">fileStream</span>);
</span></span></code></pre></div></li>
</ol>
<p>برای تعریف‌های دقیق کلاس و متد، به <a href="https://reference.groupdocs.cloud/annotation/">مرجع API</a> مراجعه کنید.</p>
<h2 id="نصب-و-پیکربندی-groupdocsannotation-cloud-sdk-for-nodejs">نصب و پیکربندی GroupDocs.Annotation Cloud SDK for Node.js</h2>
<p>SDK به‌صورت یک بسته npm توزیع می‌شود. آن را با فرمان زیر نصب کنید و سپس در پروژهٔ خود require کنید.</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>npm install groupdocs-annotation-cloud
</span></span></code></pre></div><p>می‌توانید آخرین بسته را به‌صورت مستقیم از <a href="https://github.com/groupdocs-annotation-cloud/groupdocs-annotation-cloud-node">صفحهٔ انتشارهای GitHub</a> یا <a href="https://releases.groupdocs.cloud/annotation/nodejs/">آدرس دانلود رسمی</a> دریافت کنید.</p>
<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-javascript" data-lang="javascript"><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">GroupDocsAnnotationCloud</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;@groupdocs/annotation-cloud&#34;</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">GroupDocsAnnotationCloud</span>.<span style="color:#a6e22e">Configuration</span>(<span style="color:#e6db74">&#34;YOUR_CLIENT_ID&#34;</span>, <span style="color:#e6db74">&#34;YOUR_CLIENT_SECRET&#34;</span>);
</span></span></code></pre></div><p>اطمینان حاصل کنید که محیط زمان اجرای شما الزامات نسخه Node.js را برآورده می‌کند و یک حساب کاربری معتبر GroupDocs برای دریافت اعتبارهای مشتری دارید.</p>
<h2 id="گزینهها-و-تنظیمات-حذف-حاشیهنویسی">گزینه‌ها و تنظیمات حذف حاشیه‌نویسی</h2>
<p>SDK چندین پارامتر را که می‌توانید تنظیم کنید، در اختیار می‌گذارد:</p>
<ul>
<li><strong>clientId / clientSecret</strong> - اعتبارهای احراز هویت OAuth. آنها را در سازنده <code>Configuration</code> تنظیم کنید.</li>
<li><strong>fileInfo.filePath</strong> - مسیر PDF در ذخیره‌سازی GroupDocs Cloud. اگر فایل‌ها را در پوشه‌ای متفاوت ذخیره می‌کنید، این مقدار را تنظیم کنید.</li>
<li><strong>annotationIds</strong> - آرایه‌ای از شناسه‌ها که توسط <code>GetAnnotations</code> برگردانده می‌شود. ارائه یک زیرمجموعه امکان حذف انتخابی را فراهم می‌کند.</li>
</ul>
<p>تنظیمات اضافی مانند زمان‌سنجی درخواست‌ها و پیکربندی پروکسی در مستندات SDK موجود است؛ برای فهرست کامل، به <a href="https://docs.groupdocs.cloud/annotation/">مستندات رسمی</a> مراجعه کنید.</p>
<h2 id="بهترین-روشها-برای-حذف-حاشیهنویسیهای-pdf-از-طریق-rest">بهترین روش‌ها برای حذف حاشیه‌نویسی‌های PDF از طریق REST</h2>
<ul>
<li><strong>اعتبارسنجی شناسه‌های حاشیه‌نویسی</strong> - همیشه بررسی کنید که شناسه‌هایی که قصد حذف آن‌ها را دارید وجود داشته باشند؛ تلاش برای حذف شناسه‌های غیر موجود می‌تواند منجر به خطای 404 شود.</li>
<li><strong>استفاده از HTTPS</strong> - تمام فراخوانی‌های API باید از طریق HTTPS انجام شوند تا اعتبارنامه‌ها و داده‌های سند شما محافظت شوند.</li>
<li><strong>مدیریت فایل‌های بزرگ با بارگذاری قطعه‌ای</strong> - برای فایل‌های PDF بزرگ‌تر از ۱۰۰ مگابایت، ترجیحاً از نقطه انتهایی بارگذاری چندبخشی استفاده کنید تا از زمان‌سنجی جلوگیری شود.</li>
<li><strong>ثبت لاگ پاسخ‌های API</strong> - شناسه‌های درخواست و پاسخ‌ها را برای مسیرهای حسابرسی و رفع مشکل آسان‌تر ذخیره کنید.</li>
<li><strong>استفاده مجدد از توکن‌های دسترسی</strong> - توکن OAuth را تا زمان انقضا در کش نگه دارید تا بار احراز هویت کاهش یابد.</li>
</ul>
<h2 id="سوالات-متداول">سوالات متداول</h2>
<ul>
<li>
<p><strong>چگونه می‌توانم با GroupDocs.Annotation Cloud API احراز هویت کنم؟</strong><br>
یک شناسه کلاینت (client ID) و رمز (secret) را از حساب GroupDocs خود دریافت کنید، سپس یک توکن دسترسی را از طریق نقطه انتهایی OAuth درخواست کنید. برای جزئیات، به <a href="https://docs.groupdocs.cloud/annotation/">مستندات رسمی</a> مراجعه کنید.</p>
</li>
<li>
<p><strong>آیا می‌توانم حاشیه‌نویسی‌های خاص را به جای همه حذف کنم؟</strong><br>
بله، شناسه‌های حاشیه‌نویسی‌هایی که می‌خواهید حذف کنید را در DeleteAnnotationsRequest ارائه دهید. SDK پس از فراخوانی GetAnnotations فهرست شناسه‌های حاشیه‌نویسی را برمی‌گرداند.</p>
</li>
<li>
<p><strong>چگونه می‌توانم اشیاء Annotation را از PDF با REST در Node.JS حذف کنم؟</strong><br>
برای حذف اشیاء Annotation از PDF با استفاده از REST در Node.JS، از GroupDocs.Annotation Cloud SDK for Node.js استفاده کنید تا پس از دریافت شناسه‌های حاشیه‌نویسی، endpoint DeleteAnnotations را فراخوانی کنید. جریان کامل کار در مثال کد و بخش cURL این راهنما نشان داده شده است.</p>
</li>
<li>
<p><strong>برای استفاده در تولید چه مجوزی لازم است؟</strong><br>
برای تولید به یک مجوز پرداختی نیاز است. می‌توانید در حین ارزیابی، یک مجوز موقت را از <a href="https://purchase.groupdocs.cloud/temporary-license/">صفحهٔ مجوز موقت</a> دریافت کنید.</p>
</li>
</ul>
<h2 id="مطالعه-بیشتر">مطالعه بیشتر</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/fa/annotation/extract-or-remove-annotations-from-pdf-using-rest-api-in-node-js/">استخراج یا حذف حاشیه‌نویسی‌ها از PDF با استفاده از REST API در Node.js</a></li>
<li><a href="https://blog.groupdocs.cloud/fa/annotation/strikethrough-text-in-a-pdf-using-nodejs/">متن خط خورده در PDF با Node.js و REST API</a></li>
<li><a href="https://blog.groupdocs.cloud/fa/annotation/remove-annotations-from-pdf-using-rest-api-in-python/">حذف حاشیه‌نویسی‌ها از PDF با استفاده از REST API در Python</a></li>
</ul>
]]></content:encoded>
    </item>
    
    <item>
      <title>ویرایش برگه Excel از طریق REST در Node.JS</title>
      <link>https://blog-qa.groupdocs.cloud/fa/editor/edit-excel-sheet-via-rest-in-nodejs/</link>
      <pubDate>Fri, 02 Oct 2026 14:32:02 +0000</pubDate>
      
      <guid>https://blog-qa.groupdocs.cloud/fa/editor/edit-excel-sheet-via-rest-in-nodejs/</guid>
      <description>نحوه ویرایش فایل Excel در Node.js از طریق REST با استفاده از GroupDocs.Editor Cloud SDK را بیاموزید. این راهنما شامل تنظیمات، مثال کد، فراخوانی‌های cURL و نکات عملکردی است.</description>
      <content:encoded><![CDATA[<p>به‌روزرسانی خودکار صفحات گسترده یک نیاز رایج هنگام ساخت سرویس‌های وب مبتنی بر داده یا خطوط لوله گزارش‌دهی است. SDK <a href="https://products.groupdocs.cloud/editor/nodejs/">GroupDocs.Editor Cloud SDK for Node.js</a> به شما امکان ویرایش فایل Excel در Node.js از طریق REST را با تنها چند خط کد می‌دهد. در این آموزش خواهید دید که چگونه SDK را پیکربندی کنید، یک کتاب‌کار <a href="https://docs.fileformat.com/spreadsheet/xlsx/">XLSX</a> را بارگذاری کنید، یک <a href="https://docs.fileformat.com/spreadsheet/cell/">سلول</a> را تغییر دهید، تغییرات را ذخیره کنید و با استفاده از درخواست‌های خام cURL همان نتیجه را به دست آورید. همچنین ویژگی‌های کلیدی، گزینه‌های پیکربندی و ملاحظات عملکردی را بررسی می‌کنیم تا به شما کمک کنیم ویرایش Excel را به‌صورت کارآمد یکپارچه کنید.</p>
<h2 id="ویرایش-فایل-excel-در-nodejs-از-طریق-rest---راهنمای-5-مرحلهای">ویرایش فایل Excel در Node.js از طریق REST - راهنمای 5 مرحله‌ای</h2>
<ol>
<li><strong>نصب SDK و پیکربندی اعتبارها</strong>: <code>CLIENT_ID</code> و <code>CLIENT_SECRET</code> خود را تنظیم کنید تا کتابخانه بتواند با GroupDocs Cloud احراز هویت کند.</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">CLIENT_ID</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">CLIENT_SECRET</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">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">Configuration</span>(<span style="color:#a6e22e">CLIENT_ID</span>, <span style="color:#a6e22e">CLIENT_SECRET</span>);
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">editApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">EditApi</span>(<span style="color:#a6e22e">config</span>);
</span></span></code></pre></div><ol start="2">
<li><strong>بارگذاری کتاب‌کار Excel برای ویرایش</strong>: از <code>EditDocumentRequest</code> برای باز کردن فایلی که در ذخیره‌سازی ابری شما ذخیره شده است استفاده کنید.</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">editRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">EditDocumentRequest</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">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">FileInfo</span>({ <span style="color:#a6e22e">filePath</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;input.xlsx&#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">editResult</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">editApi</span>.<span style="color:#a6e22e">editDocument</span>(<span style="color:#a6e22e">editRequest</span>);
</span></span></code></pre></div><ol start="3">
<li><strong>دریافت اولین برگه کاری و یافتن سلول هدف</strong>: SDK یک شیء <code>document</code> برمی‌گرداند که شامل برگه‌های کاری و سلول‌ها است.</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">worksheet</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">editResult</span>.document.<span style="color:#a6e22e">worksheets</span>[<span style="color:#ae81ff">0</span>];
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">let</span> <span style="color:#a6e22e">targetCell</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">worksheet</span>.<span style="color:#a6e22e">cells</span>.<span style="color:#a6e22e">find</span>(<span style="color:#a6e22e">c</span> =&gt; <span style="color:#a6e22e">c</span>.<span style="color:#a6e22e">rowIndex</span> <span style="color:#f92672">===</span> <span style="color:#ae81ff">0</span> <span style="color:#f92672">&amp;&amp;</span> <span style="color:#a6e22e">c</span>.<span style="color:#a6e22e">columnIndex</span> <span style="color:#f92672">===</span> <span style="color:#ae81ff">0</span>);
</span></span></code></pre></div><ol start="4">
<li><strong>به‌روزرسانی یا ایجاد مقدار سلول</strong>: محتوای سلول <strong>A1</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">if</span> (<span style="color:#f92672">!</span><span style="color:#a6e22e">targetCell</span>) {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">targetCell</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">Cell</span>({
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">rowIndex</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">0</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">columnIndex</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">0</span>,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">value</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;Edited via GroupDocs Editor Cloud&#34;</span>
</span></span><span style="display:flex;"><span>    });
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">worksheet</span>.<span style="color:#a6e22e">cells</span>.<span style="color:#a6e22e">push</span>(<span style="color:#a6e22e">targetCell</span>);
</span></span><span style="display:flex;"><span>} <span style="color:#66d9ef">else</span> {
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">targetCell</span>.<span style="color:#a6e22e">value</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;Edited via GroupDocs Editor Cloud&#34;</span>;
</span></span><span style="display:flex;"><span>}
</span></span></code></pre></div><ol start="5">
<li><strong>ذخیرهٔ کاربرگ ویرایش‌شده به ذخیره‌سازی</strong>: یک <code>outputPath</code> فراهم کنید و <code>saveDocument</code> را فراخوانی کنید.</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">saveOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">SaveOptions</span>({ <span style="color:#a6e22e">outputPath</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;output.xlsx&#34;</span> });
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">saveRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">SaveDocumentRequest</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">documentId</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">editResult</span>.<span style="color:#a6e22e">documentId</span>,
</span></span><span style="display:flex;"><span>    document<span style="color:#f92672">:</span> <span style="color:#a6e22e">editResult</span>.document,
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">saveOptions</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">saveOptions</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">editApi</span>.<span style="color:#a6e22e">saveDocument</span>(<span style="color:#a6e22e">saveRequest</span>);
</span></span></code></pre></div><p>برای دریافت فهرست کامل کلاس‌ها و متدها، به <a href="https://reference.groupdocs.cloud/editor/">مرجع API</a> مراجعه کنید.</p>
<h2 id="ویرایش-فایل-excel-در-nodejs-از-طریق-rest---مثال-کامل-کد">ویرایش فایل Excel در Node.js از طریق REST - مثال کامل کد</h2>
<p>مثال زیر نشان می‌دهد که چگونه می‌توان فایل Excel را در Node.js از طریق REST با استفاده از GroupDocs.Editor Cloud SDK ویرایش کرد.</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">GroupDocsEditorCloud</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">require</span>(<span style="color:#e6db74">&#34;@groupdocs/editor-cloud&#34;</span>);
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Replace with your actual GroupDocs Cloud credentials
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">CLIENT_ID</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">CLIENT_SECRET</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:#75715e">// Paths for the source Excel file and the edited result
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">INPUT_FILE_PATH</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;input.xlsx&#34;</span>;
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">const</span> <span style="color:#a6e22e">OUTPUT_FILE_PATH</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;output.xlsx&#34;</span>;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#66d9ef">async</span> <span style="color:#66d9ef">function</span> <span style="color:#a6e22e">editExcel</span>() {
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// Configure the SDK
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></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">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">Configuration</span>(<span style="color:#a6e22e">CLIENT_ID</span>, <span style="color:#a6e22e">CLIENT_SECRET</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">editApi</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">EditApi</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">// 1. Load the Excel workbook for editing
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">editRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">EditDocumentRequest</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">GroupDocsEditorCloud</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">INPUT_FILE_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 style="color:#66d9ef">const</span> <span style="color:#a6e22e">editResult</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">editApi</span>.<span style="color:#a6e22e">editDocument</span>(<span style="color:#a6e22e">editRequest</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">documentId</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">editResult</span>.<span style="color:#a6e22e">documentId</span>;
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">const</span> document <span style="color:#f92672">=</span> <span style="color:#a6e22e">editResult</span>.document;
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// 2. Retrieve the first worksheet
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">worksheet</span> <span style="color:#f92672">=</span> document.<span style="color:#a6e22e">worksheets</span>[<span style="color:#ae81ff">0</span>];
</span></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// 3. Update cell A1 (rowIndex = 0, columnIndex = 0) with a new value
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">let</span> <span style="color:#a6e22e">targetCell</span> <span style="color:#f92672">=</span> <span style="color:#a6e22e">worksheet</span>.<span style="color:#a6e22e">cells</span>.<span style="color:#a6e22e">find</span>(<span style="color:#a6e22e">c</span> =&gt; <span style="color:#a6e22e">c</span>.<span style="color:#a6e22e">rowIndex</span> <span style="color:#f92672">===</span> <span style="color:#ae81ff">0</span> <span style="color:#f92672">&amp;&amp;</span> <span style="color:#a6e22e">c</span>.<span style="color:#a6e22e">columnIndex</span> <span style="color:#f92672">===</span> <span style="color:#ae81ff">0</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#66d9ef">if</span> (<span style="color:#f92672">!</span><span style="color:#a6e22e">targetCell</span>) {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">targetCell</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">Cell</span>({
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">rowIndex</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">0</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">columnIndex</span><span style="color:#f92672">:</span> <span style="color:#ae81ff">0</span>,
</span></span><span style="display:flex;"><span>            <span style="color:#a6e22e">value</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;Edited via GroupDocs Editor Cloud&#34;</span>
</span></span><span style="display:flex;"><span>        });
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">worksheet</span>.<span style="color:#a6e22e">cells</span>.<span style="color:#a6e22e">push</span>(<span style="color:#a6e22e">targetCell</span>);
</span></span><span style="display:flex;"><span>    } <span style="color:#66d9ef">else</span> {
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">targetCell</span>.<span style="color:#a6e22e">value</span> <span style="color:#f92672">=</span> <span style="color:#e6db74">&#34;Edited via GroupDocs Editor Cloud&#34;</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">// 4. Save the edited workbook back to storage
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>    <span style="color:#66d9ef">const</span> <span style="color:#a6e22e">saveOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">SaveOptions</span>({
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">outputPath</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">OUTPUT_FILE_PATH</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">saveRequest</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">SaveDocumentRequest</span>({
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">documentId</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">documentId</span>,
</span></span><span style="display:flex;"><span>        document<span style="color:#f92672">:</span> document,
</span></span><span style="display:flex;"><span>        <span style="color:#a6e22e">saveOptions</span><span style="color:#f92672">:</span> <span style="color:#a6e22e">saveOptions</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">saveResult</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">await</span> <span style="color:#a6e22e">editApi</span>.<span style="color:#a6e22e">saveDocument</span>(<span style="color:#a6e22e">saveRequest</span>);
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">console</span>.<span style="color:#a6e22e">log</span>(<span style="color:#e6db74">`Edited file saved to: </span><span style="color:#e6db74">${</span><span style="color:#a6e22e">saveResult</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></span><span style="display:flex;"><span>
</span></span><span style="display:flex;"><span><span style="color:#75715e">// Execute the edit operation
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span><span style="color:#a6e22e">editExcel</span>().<span style="color:#66d9ef">catch</span>(<span style="color:#a6e22e">error</span> =&gt; {
</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 Excel editing:&#34;</span>, <span style="color:#a6e22e">error</span>);
</span></span><span style="display:flex;"><span>});
</span></span></code></pre></div><blockquote>
<p><strong>توجه:</strong> این مثال کد عملکرد اصلی را نشان می‌دهد. قبل از استفاده از آن در پروژه خود، مطمئن شوید که مسیرهای فایل و مقادیر پیکربندی را به‌گونه‌ای به‌روزرسانی کنید که با محیط واقعی شما مطابقت داشته باشد، اطمینان حاصل کنید که تمام وابستگی‌های مورد نیاز به‌درستی نصب شده‌اند و به‌طور کامل در محیط توسعه خود تست کنید. اگر با مشکلی مواجه شدید، لطفاً به <a href="https://docs.groupdocs.cloud/editor/">مستندات رسمی</a> مراجعه کنید یا برای دریافت کمک با <a href="https://forum.groupdocs.cloud/c/editor/20">تیم پشتیبانی</a> تماس بگیرید.</p>
</blockquote>
<h2 id="بهروزرسانی-شیت-xlsx-با-استفاده-از-rest-api-در-nodejs-از-طریق-curl">به‌روزرسانی شیت XLSX با استفاده از REST API در Node.js از طریق cURL</h2>
<p>در ادامه یک راهنمای سریع برای همان عملیات با استفاده از تماس‌های HTTP خام آورده شده است. مقادیر جایگزین‌کننده را با اعتبارنامه‌ها و نام‌های فایل واقعی خود جایگزین کنید.</p>
<ol>
<li><strong>دریافت توکن دسترسی</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/connect/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;client_id=YOUR_CLIENT_ID&amp;client_secret=YOUR_CLIENT_SECRET&amp;grant_type=client_credentials&#34;</span>
</span></span></code></pre></div><p>پاسخ شامل <code>access_token</code> است.</p>
<ol start="2">
<li><strong>بارگذاری فایل XLSX منبع</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/storage/file/input.xlsx&#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>        -F <span style="color:#e6db74">&#34;file=@input.xlsx&#34;</span>
</span></span></code></pre></div><ol start="3">
<li><strong>ویرایش کتاب کار (تغییر سلول A1)</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/editor/edit&#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;fileInfo&#34;: { &#34;filePath&#34;: &#34;input.xlsx&#34; },
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">           &#34;options&#34;: {
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">               &#34;cells&#34;: [
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">                   { &#34;rowIndex&#34;: 0, &#34;columnIndex&#34;: 0, &#34;value&#34;: &#34;Edited via GroupDocs Editor Cloud&#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">           }
</span></span></span><span style="display:flex;"><span><span style="color:#e6db74">         }&#39;</span>
</span></span></code></pre></div><ol start="4">
<li><strong>دانلود فایل ویرایش‌شده</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/output.xlsx&#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 output.xlsx
</span></span></code></pre></div><p>برای جزئیات بیشتر در مورد بارهای درخواست، <a href="https://reference.groupdocs.cloud/editor/">مستندات رسمی API</a> را ببینید.</p>
<h2 id="پیشنیازها-و-راهاندازی-برای-groupdocseditor-cloud-sdk-for-nodejs">پیش‌نیازها و راه‌اندازی برای GroupDocs.Editor Cloud SDK for Node.js</h2>
<p>برای شروع استفاده از SDK، به Node.js 14 یا نسخه‌های بعدی و یک حساب GroupDocs Cloud نیاز دارید.</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>npm install groupdocs-editor-cloud
</span></span></code></pre></div><p>شما می‌توانید آخرین بسته را از <a href="https://releases.groupdocs.cloud/editor/nodejs/">صفحه انتشار</a> دانلود کنید. پس از نصب، یک <code>client_id</code> و <code>client_secret</code> در داشبورد GroupDocs Cloud خود ایجاد کنید و آن‌ها را ایمن نگه دارید.</p>
<h2 id="چه-چیزی-groupdocseditor-cloud-sdk-for-nodejs-را-برای-اصلاح-کاربرگهای-excel-ایدهآل-میکند">چه چیزی GroupDocs.Editor Cloud SDK for Node.js را برای اصلاح کاربرگ‌های Excel ایده‌آل می‌کند</h2>
<ul>
<li><strong>پشتیبانی کامل XLSX</strong> - بارگذاری، ویرایش و ذخیره کتاب‌کارها در حالی که فرمول‌ها، سبک‌ها و اعتبارسنجی داده‌ها حفظ می‌شوند.</li>
<li><strong>ویرایش در سطح سلول</strong> - دسترسی برنامه‌نویسی به سلول‌ها، ردیف‌ها یا ستون‌های جداگانه، که برای به‌روزرسانی گزارش‌ها یا داشبوردها ایده‌آل است.</li>
<li><strong>یکپارچه‌سازی ذخیره‌سازی ابری</strong> - کار مستقیم با فایل‌های ذخیره‌شده در GroupDocs Cloud بدون نیاز به دانلود محلی آن‌ها.</li>
<li><strong>ارتباط امن REST</strong> - تمام عملیات از طریق HTTPS انجام می‌شود و SDK مدیریت توکن‌ها را برای شما بر عهده می‌گیرد.</li>
</ul>
<p>برای مطالعهٔ عمیق‌تر، به <a href="https://docs.groupdocs.cloud/editor/">مستندات</a> مراجعه کنید.</p>
<h2 id="بهینهسازی-گزینههای-ویرایش-excel-در-groupdocseditor-cloud">بهینه‌سازی گزینه‌های ویرایش Excel در GroupDocs.Editor Cloud</h2>
<p>SDK چندین گزینه را در اختیار می‌گذارد که به شما امکان می‌دهد نحوه ذخیره کاربرگ ویرایش‌شده را کنترل کنید.</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">saveOptions</span> <span style="color:#f92672">=</span> <span style="color:#66d9ef">new</span> <span style="color:#a6e22e">GroupDocsEditorCloud</span>.<span style="color:#a6e22e">SaveOptions</span>({
</span></span><span style="display:flex;"><span>    <span style="color:#a6e22e">outputPath</span><span style="color:#f92672">:</span> <span style="color:#e6db74">&#34;output.xlsx&#34;</span>,
</span></span><span style="display:flex;"><span>    <span style="color:#75715e">// You can also set compression level, password protection, etc.
</span></span></span><span style="display:flex;"><span><span style="color:#75715e"></span>});
</span></span></code></pre></div><ul>
<li><strong><code>outputPath</code></strong> - مسیر مقصد در فضای ذخیره‌سازی ابری.</li>
<li><strong><code>compressionLevel</code></strong> - اندازه فایل را برای کتاب‌های کاری بزرگ کاهش می‌دهد (در مستندات API موجود است).</li>
<li><strong><code>password</code></strong> - در صورت لزوم، فایل حاصل را با رمز عبور محافظت می‌کند.</li>
</ul>
<p>این تنظیمات را طوری تنظیم کنید که با نیازهای امنیتی و عملکردی پروژه شما مطابقت داشته باشد.</p>
<h2 id="ملاحظات-عملکرد-برای-ویرایش-کتابهای-کار-xlsx-از-طریق-rest">ملاحظات عملکرد برای ویرایش کتاب‌های کار XLSX از طریق REST</h2>
<ol>
<li><strong>دوباره استفاده از شیء پیکربندی</strong> - ایجاد یک <code>Configuration</code> جدید برای هر درخواست باعث اضافه بار می‌شود. یک نمونهٔ واحد را برای طول عمر برنامه‌تان نگه دارید.</li>
<li><strong>به‌روزرسانی‌های دسته‌ای سلول‌ها</strong> - اگر نیاز به تغییر سلول‌های زیادی دارید، آن‌ها را در یک آرایه جمع کنید و به‌جای چندین فراخوانی، یک درخواست ویرایش ارسال کنید.</li>
<li><strong>محدود کردن اندازهٔ ورق‌کار</strong> - ورق‌کارهای بسیار بزرگ مصرف حافظه را افزایش می‌دهند. در صورت امکان، تقسیم داده‌ها بین چندین ورق را در نظر بگیرید.</li>
<li><strong>از ذخیره‌سازی‌های غیرضروری جلوگیری کنید</strong> - فقط پس از اعمال تمام تغییرات مورد نیاز، <code>saveDocument</code> را فراخوانی کنید تا عملیات I/O کاهش یابد.</li>
</ol>
<h2 id="نتیجهگیری">نتیجه‌گیری</h2>
<p>ویرایش یک فایل Excel در Node.js از طریق REST با استفاده از <a href="https://products.groupdocs.cloud/editor/nodejs/">GroupDocs.Editor Cloud SDK for Node.js</a> به سادگی انجام می‌شود. شما می‌توانید برنامه‌نویسی کنید تا یک کتاب‌کار را بارگذاری، سلول‌ها را تغییر داده و نتیجه را با تنها چند فراخوانی API یا دستورات ساده cURL ذخیره کنید. معماری مبتنی بر ابر این SDK نیاز به نصب محلی Office را از بین می‌برد و با بار کاری برنامه شما مقیاس‌پذیر است. برای استقرارهای تولیدی، یک مجوز خریداری کنید که با الگوی استفاده شما سازگار باشد و همچنین می‌توانید برای تست یک مجوز موقت از <a href="https://purchase.groupdocs.cloud/temporary-license/">صفحه مجوز موقت</a> دریافت کنید. امروز ادغام ویرایش Excel را شروع کنید و خطوط پردازش داده‌های خود را بهینه کنید.</p>
<h2 id="سوالات-متداول">سوالات متداول</h2>
<p><strong>چگونه می‌توانم یک فایل Excel را در Node.js از طریق REST بدون نوشتن کد HTTP سفارشی ویرایش کنم؟</strong><br>
از GroupDocs.Editor Cloud SDK for Node.js استفاده کنید، که فراخوانی‌های REST را انتزاع می‌کند و به شما امکان می‌دهد فایل Excel را در Node.js از طریق REST با فراخوانی‌های ساده متدها ویرایش کنید.</p>
<p><strong>آیا می‌توانم یک شیت XLSX را با استفاده از REST api Node.js برای فایل‌های بزرگ به‌روزرسانی کنم؟</strong><br>
بله. SDK داده‌ها را به‌صورت استریم می‌کند و به‌روزرسانی‌های دسته‌ای را پشتیبانی می‌کند، که آن را برای کتاب‌های کاری بزرگ مناسب می‌سازد. برای بهبود عملکرد، <code>compressionLevel</code> و تغییرات سلول‌های دسته‌ای را تنظیم کنید.</p>
<p><strong>بهترین روش برای برنامه‌نویسی تغییر ورک‌شیت Excel در Node.js چیست؟</strong><br>
با اشیاء <code>worksheet</code> و <code>cell</code> که توسط <code>editDocument</code> برگردانده می‌شوند کار کنید. این به شما امکان کنترل کامل بر روی ردیف‌ها، ستون‌ها و مقادیر سلول‌ها را بدون خروج از محیط Node.js می‌دهد.</p>
<p><strong>کجا می‌توانم اطلاعات قیمت‌گذاری و مجوزها را پیدا کنم؟</strong><br>
تمام جزئیات مجوز، از جمله سطوح قیمت‌گذاری و یک مجوز موقت برای ارزیابی، در <a href="https://purchase.groupdocs.cloud/temporary-license/">صفحه مجوز موقت</a> موجود است.</p>
<h2 id="بیشتر-بخوانید">بیشتر بخوانید</h2>
<ul>
<li><a href="https://blog.groupdocs.cloud/fa/editor/edit-excel-sheet-via-rest-in-java/">ویرایش شیت اکسل از طریق REST در جاوا</a></li>
<li><a href="https://blog.groupdocs.cloud/fa/editor/edit-excel-sheet-using-rest-api-in-python/">ویرایش شیت اکسل با استفاده از REST API در پایتون</a></li>
<li><a href="https://blog.groupdocs.cloud/fa/editor/best-practices-for-csv-editor-development-in-java/">بهترین روش‌ها برای توسعه ویرایشگر CSV در جاوا</a></li>
</ul>
]]></content:encoded>
    </item>
    
  </channel>
</rss>
