使用 Microsoft Playwright 在 Azure Function Linux 消费计划中创建本地 PDF 文件

Creating a local PDF file in Azure Function Linux consumption plan with Microsoft Playwright

我正在使用 Microsoft Playwright 以便从 Azure 函数(HTTP 触发器)内的远程网站创建 PDF。使用的方法是 page.GetPdfAsync() ,它只处理文件路径以创建生成的 PDF 文件。我想将文件存储在 Azure Blob 存储容器中,但由于 GetPdfAsync() 方法不处理流或 Azure Blob 存储,我正在尝试临时存储生成的文件。我尝试使用不同的本地文件夹,例如 /tmp/local 但每次我触发该功能时,我都会在跟踪中看到一个异常说文件系统 只读.

我读了这个 blog post from Anthony Chu 所以似乎 Linux 消费计划现在支持 Playwright 但在文章中生成的屏幕截图直接在 HTTP 响应中发回并且从未存储在本地磁盘。

对于编码环境,我使用C#、VS 2019和Azure Function Core Tools + Azure CLI进行部署。

知道我该如何处理这种情况吗?

Page.GetPdfAsync()returns一个byte[]。您可以将 null 传递给路径并将结果 byte[] 上传到 Azure。