DocuSign 信封显示为空并且在草稿中

问题描述 投票:0回答:1

我目前正在尝试使用 DocuSigns eSign API 创建一个信封。 设置好一切后,一切似乎都很好,尝试迭代文件夹并将所有文档附加到信封时出现问题。

我目前正在尝试这样做:

async function getDocumentsFromFolder(folderPath) {
  const files = fs.readdirSync(folderPath);
  const documents = [];

  for (const [index, file] of files.entries()) {
    const filePath = path.join(folderPath, file);
    const fileBuffer = fs.readFileSync(filePath);
    const fileBase64 = fileBuffer.toString('base64');



    const document = new Document();
    document.documentBase64 = fileBase64;
    document.name = file;
    document.fileExtension = path.extname(file).substring(1);
    document.documentId = (index + 1).toString();

    documents.push(document);
  }

  return documents;
}
async function makeEnvelope(args) {

  let env = new docusign.EnvelopeDefinition();
  env.emailSubject = "";
  
  const folderPath = './docs'; // Replace with the path to your folder
  const documents = await getDocumentsFromFolder(folderPath);

  env.documents = documents;

  let signer1 = docusign.Signer.constructFromObject({
    email: args.signerEmail,
    name: args.signerName,
    recipientId: "1",
    routingOrder: "1",
  });

  let witness1 = docusign.Witness.constructFromObject({
    email: args.witnessEmail,
    name: args.witnessName,
    routingOrder: '1',
    witnessFor: '1',
    recipientId: '2'
  });

  let signHere1 = docusign.SignHere.constructFromObject({
      yPosition: '579',
      xPosition: '121',
      documentId: '1',
      pageNumber: '4'
    }),

  let signer1Tabs = docusign.Tabs.constructFromObject({
    signHereTabs: [signHere1],
  });
  signer1.tabs = signer1Tabs;

  let witness1Tabs = docusign.Tabs.constructFromObject({
    signHereTabs: [signHere1]
  });
  witness1.tabs = witness1Tabs;

  let recipients = docusign.Recipients.constructFromObject({
    signers: [signer1],
    witnesses: [witness1]
  });
  env.recipients = recipients;
  env.status = args.status;

  return env;
}

使用此方法,创建了信封,但它不包含任何文档、签名者或姓名。 在尝试快速入门指南中提供的默认方法时:

  let doc1 = new docusign.Document(),
    doc1b64 = Buffer.from(document1(args)).toString("base64"),
    doc2b64 = Buffer.from(doc2DocxBytes).toString("base64"),
    doc3b64 = Buffer.from(doc3PdfBytes).toString("base64");
  doc1.documentBase64 = doc1b64;
  doc1.name = "Order acknowledgement"; // can be different from actual file name
  doc1.fileExtension = "html"; // Source data format. Signed docs are always pdf.
  doc1.documentId = "1"; // a label used to reference the doc

一切似乎都很好......

有什么想法我可能在这里做错了吗?谢谢!

javascript node.js docusignapi
1个回答
0
投票

我的调试建议是获取 API 请求的API 日志。然后你可能会发现你的问题。

如果没有,请编辑您的问题以包含日志,以便我们进一步提供帮助。

© www.soinside.com 2019 - 2024. All rights reserved.