【问题标题】:DocuSign API Javascript SDK - getDocument returns stringDocuSign API Javascript SDK - getDocument 返回字符串
【发布时间】:2021-10-06 20:34:29
【问题描述】:

我正在尝试通过 Node 调用 api 端点 getDocument,并希望返回一个 Buffer,但是,它正在返回一个字符串。即使我为encoding 可选参数传入不同的值,返回的数据也始终相同。

当我在 C# 中测试相同的端点时,会返回预期的 MemoryStream。

我的代码如下:

const document = await envelopesApi.getDocument(accountId, envelopeId, '1')

1 是 documentId(第 1 页)。

document的内容看起来像%PDF-1.5\n%ûüýþ\n%Writing objects...等等

然后我尝试将其保存到文件中:

fs.writeFileSync('test.pdf', Buffer.from(documentContent))

没有成功。如何获取 api 响应并将其保存到文件以供查看?

【问题讨论】:

    标签: node.js docusignapi


    【解决方案1】:

    是的,这是正确的,您必须为 PDF 使用正确的 mime 类型(在这种情况下)才能在浏览器中显示此文件。

    您可以找到一个node.JS code example,向您展示如何执行此操作。

    但在您的案例中最重要的部分是这一行:

    mimetype = "application/pdf";
    

    【讨论】:

    • 嗨@Inbar,感谢您的快速回复。我不太确定我是否遵循,您能否举一个示例,说明如何将 mimetype 传递给 writeFIleSync,例如?我还需要做 Buffer.from(documentContent) 吗?从代码示例看来,documentContent 是 fileBytes。我没有在浏览器中显示,我正在尝试将文件保存到磁盘。谢谢!
    • fs.writeFileSync("testpdf", body,'binary');
    • 成功了!我最初尝试过 fs.writeFileSync('test.pdf', Buffer.from(documentContent), 'binary')。 Buffer.from 是它的原因。谢谢@Inbar!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多