在Google Apps Script中将PDF文件作为Blob提供

4
我有一个生成PDF文件的Google应用脚本。我的目标是将该PDF文件返回到UI,以便用户可以下载或打印它。但是,这里的限制是我不能将用户重定向到Google Drive URL - 我需要在发起文件生成的同一页上将文件提供给用户。我看过这篇帖子,它提供了一个下载解决方案,但它使用了Google Drive链接。此外,这篇帖子这篇帖子提到了下载,但它只适用于给定的文件类型,其中不包括PDF。
我能够在doGet方法中生成PDF和blob,但我不知道如何将其提供给UI,以便用户可以与之交互。是否有一种方法可以将blob传递到前端,然后允许用户将其作为PDF下载或打印?
function doGet(request){    
    var file = generateFile();
    var blob = file.getAs('application/pdf');
    //Goal: return blob to front end so user can download / print
}
1个回答

2
我可以通过将数据作为base64编码文件传递来实现此操作。我使用getBytes()获取文件的字节数组,然后使用base64encode()对其进行编码,然后将其发送到前端。在前端,我使用了这个答案的变体,允许用户下载文件。

你能在你的回答中加上代码示例吗?我尝试了一些,但是出现了错误document is not defined或者window is not defined - Elliott B

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接