Firma documenti con firme digitali utilizzando l'API REST in Node.js

Puoi firmare elettronicamente i tuoi documenti con firme digitali in modo programmatico sul cloud. Le firme digitali vengono utilizzate per convalidare l’autenticità e l’integrità dei documenti. Consente inoltre di allegare al documento un codice che funge da firma. Questo articolo si concentrerà su come firmare documenti con firme digitali utilizzando un’API REST in Node.js.

In questo articolo saranno trattati i seguenti argomenti:

Document Signature REST API e Node.js SDK

Per firmare i file PDF e DOCX, utilizzerò l’API Node.js SDK of GroupDocs.Signature Cloud. Ti consente di creare, verificare e cercare vari tipi di firme come immagini, codici a barre, QR-Code, firme basate su testo, digitali e timbri. Queste firme possono essere facilmente applicate a documenti portatili o semplici, fogli di calcolo, presentazioni e immagini di formati di file supportati. Puoi integrare l’API nelle tue applicazioni Node.js esistenti. Fornisce inoltre SDK .NET, Java, PHP, Android, Ruby e Python come membri della famiglia di firme del documento per l’API Cloud.

Puoi installare GroupDocs.Signature Cloud nel tuo progetto Node.js utilizzando il seguente comando nella console:

npm install groupdocs-signature-cloud --save

Si prega di ottenere l’ID cliente e il segreto dalla dashboard prima di seguire i passaggi menzionati. Una volta che hai il tuo ID e segreto, aggiungi il codice come mostrato di seguito:

global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const config = new groupdocs_signature_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

Firma documenti Word utilizzando un’API REST in Node.js

Puoi firmare documenti Word con firme digitali sul Cloud seguendo i semplici passaggi indicati di seguito:

Carica il documento

Innanzitutto, carica il documento Word sul Cloud utilizzando l’esempio di codice riportato di seguito:

var resourcesFolder = 'C:\\Files\\sample.docx';
fs.readFile(resourcesFolder, (err, fileStream) => {
  // costruire FileApi
  var fileApi = groupdocs_signature_cloud.FileApi.fromConfig(config);
  // creare richiesta di file di caricamento
  var request = new groupdocs_signature_cloud.UploadFileRequest("sample.docx", fileStream, myStorage);
  fileApi.uploadFile(request)
});

Di conseguenza, il file Word caricato sarà disponibile nella sezione file della dashboard sul cloud. Utilizzare l’esempio di codice precedente per caricare il certificato e il file dell’immagine della firma nel cloud.

Firma documenti Word con firme digitali utilizzando Node.js

Puoi firmare i tuoi file DOCX con firme digitali a livello di codice seguendo i passaggi indicati di seguito:

  • Crea un’istanza di SignApi
  • Crea un’istanza di FileInfo
  • Imposta il percorso del file DOCX
  • Crea un’istanza di SignDigitalOptions
  • Imposta SignatureType su Digitale
  • Imposta ImageFilePath e CertificateFilePath
  • Fornisci la password
  • Imposta la posizione della firma
  • Crea un’istanza di SignSettings
  • Assegnare SignDigitalOptions e SaveOptions a SignSettings
  • Creare la CreateSignaturesRequest
  • Ottieni risultati chiamando il metodo SignApi.createSignatures().

L’esempio di codice seguente mostra come firmare un documento Word con firme digitali utilizzando un’API REST in Node.js.

// inizializza l'API
let signApi = groupdocs_signature_cloud.SignApi.fromKeys(clientId, clientSecret);

// creare informazioni sul file
let fileInfo = new groupdocs_signature_cloud.FileInfo();
fileInfo.filePath = "sample.docx";

// definire le opzioni digitali della segnaletica
let opts = new groupdocs_signature_cloud.SignDigitalOptions();
opts.signatureType = groupdocs_signature_cloud.OptionsBase.SignatureTypeEnum.Digital;
opts.imageFilePath = "signature.jpg";
opts.certificateFilePath = "certificate.pfx";
opts.password = "1234567890";

// impostare la posizione della firma su una pagina
opts.left = 350;
opts.top = 450;
opts.width = 200;
opts.height = 100;
opts.location_measure_type = "Pixels";
opts.size_measure_type = "Pixels";
opts.rotation_angle = 0;
opts.horizontal_alignment = "None";
opts.vertical_alignment = "None";
opts.margin = new groupdocs_signature_cloud.Padding();
opts.margin.all = 5;
opts.margin_measure_type = "Pixels";

// impostare la pagina per mostrare le firme
opts.page = 1;

// definire le impostazioni del segno
let settings = new groupdocs_signature_cloud.SignSettings();
settings.fileInfo = fileInfo;
settings.options = [opts];

// definire le opzioni di salvataggio
settings.saveOptions = new groupdocs_signature_cloud.SaveOptions();
settings.saveOptions.outputFilePath = "signedDigital_sample.docx";

// creare richiesta di firma
let request = new groupdocs_signature_cloud.CreateSignaturesRequest(settings);
let response = await signApi.createSignatures(request);

console.log("Output file link: " + response.downloadUrl);
Firma documenti Word con firme digitali utilizzando Node.js

Firma documenti Word con firme digitali utilizzando Node.js

Scarica il file firmato

L’esempio di codice precedente salverà il file Word firmato nel cloud. Puoi scaricarlo utilizzando l’esempio di codice fornito di seguito:

// costruire FileApi
var fileApi = groupdocs_signature_cloud.FileApi.fromConfig(config);

// creare richiesta di file di download
let request = new groupdocs_signature_cloud.DownloadFileRequest("signedDigital_sample.docx", myStorage);
let response = await fileApi.downloadFile(request);

// salvare il file nella directory di lavoro
fs.writeFile("C:\\Files\\signedDigital_sample.docx", response, "binary", function (err) { });

Firma documenti PDF con firme digitali utilizzando Node.js

È possibile firmare i documenti PDF con firme digitali a livello di programmazione seguendo i passaggi indicati di seguito:

  • Crea un’istanza di SignApi
  • Crea un’istanza di FileInfo
  • Imposta il percorso del file PDF
  • Crea un’istanza di SignDigitalOptions
  • Imposta SignatureType su Digitale
  • Imposta ImageFilePath e CertificateFilePath
  • Fornisci la password
  • Crea un’istanza di SignSettings
  • Assegnare SignDigitalOptions e SaveOptions a SignSettings
  • Creare la CreateSignaturesRequest
  • Ottieni risultati chiamando il metodo SignApi.createSignatures().

L’esempio di codice seguente mostra come firmare un documento PDF con firme digitali utilizzando un’API REST in Node.js.

// inizializza l'API
let signApi = groupdocs_signature_cloud.SignApi.fromKeys(clientId, clientSecret);

// creare informazioni sul file
let fileInfo = new groupdocs_signature_cloud.FileInfo();
fileInfo.filePath = "sample.pdf";

// definire le opzioni digitali della segnaletica
let opts = new groupdocs_signature_cloud.SignDigitalOptions();
opts.signatureType = groupdocs_signature_cloud.OptionsBase.SignatureTypeEnum.Digital;
opts.imageFilePath = "signature.jpg";
opts.certificateFilePath = "certificate.pfx";
opts.password = "1234567890";
opts.allPage = true;

// definire le opzioni del segno
let settings = new groupdocs_signature_cloud.SignSettings();
settings.fileInfo = fileInfo;
settings.options = [opts];

// definire le opzioni di salvataggio
settings.saveOptions = new groupdocs_signature_cloud.SaveOptions();
settings.saveOptions.outputFilePath = "signedDigital_sample.pdf";

// creare richiesta di firma
let request = new groupdocs_signature_cloud.CreateSignaturesRequest(settings);
let response = await signApi.createSignatures(request);

console.log("Output file link: " + response.downloadUrl);
Firma documenti PDF con firme digitali utilizzando Node.js

Firma documenti PDF con firme digitali utilizzando Node.js

Verifica le firme digitali utilizzando un’API REST in Node.js

È possibile verificare facilmente le firme digitali a livello di codice seguendo i passaggi indicati di seguito:

  • Crea un’istanza di SignApi
  • Crea un’istanza di FileInfo
  • Imposta il percorso del file DOCX
  • Creare un’istanza di theVerifyDigitalOptions
  • Imposta SignatureType su Digitale
  • Crea un’istanza di VerifySettings
  • Assegna VerifyDigitalOptions e FileInfo a VerifySettings
  • Crea la richiesta di verifica delle firme
  • Ottieni risultati chiamando il metodo SignApi.verifySignatures().
  • Mostra i risultati

L’esempio di codice seguente mostra come verificare le firme digitali utilizzando un’API REST in Node.js.

// inizializza l'API
let signApi = groupdocs_signature_cloud.SignApi.fromKeys(clientId, clientSecret);

// creare informazioni sul file
let fileInfo = new groupdocs_signature_cloud.FileInfo();
fileInfo.filePath = "signedDigital_sample.docx";

// definire le opzioni di verifica
let opts = new groupdocs_signature_cloud.VerifyDigitalOptions();
opts.signatureType = groupdocs_signature_cloud.OptionsBase.SignatureTypeEnum.Digital;

// definire le impostazioni di verifica
let settings = new groupdocs_signature_cloud.VerifySettings();
settings.fileInfo = fileInfo;
settings.options = [opts];

// creare richiesta di verifica della firma
let request = new groupdocs_signature_cloud.VerifySignaturesRequest(settings);
let response = await signApi.verifySignatures(request);

// mostra i risultati
if (response.isSuccess) {
  console.log("Successfully verified!");
}
else{
  console.log("Not verified!");
}
Verifica le firme digitali utilizzando un'API REST in Node.js

Verifica le firme digitali utilizzando un’API REST in Node.js

Prova in linea

Prova il seguente strumento di firma dei documenti online gratuito, sviluppato utilizzando l’API di cui sopra. https://products.groupdocs.app/signature/

Conclusione

In questo articolo, hai imparato come firmare documenti Word con firme digitali sul cloud. Hai anche imparato a firmare documenti PDF con firme digitali utilizzando un’API REST in Node.js. Inoltre, hai imparato come caricare in modo programmatico un file Word sul cloud e quindi scaricare il file firmato dal cloud. Puoi saperne di più su GroupDocs.Signature Cloud API utilizzando la documentazione. Forniamo anche una sezione Riferimento API che ti consente di visualizzare e interagire con le nostre API direttamente attraverso il browser. In caso di qualsiasi ambiguità, non esitate a contattarci sul forum.

Guarda anche