【问题标题】:AWS Lambda nodejs function throwing exception to generate html to pdf using html-pdfAWS Lambda nodejs函数抛出异常以使用html-pdf生成html到pdf
【发布时间】:2017-04-30 14:37:22
【问题描述】:

我们创建了AWS Lambda 函数,使用html-pdf 库在nodejs4.3 eun 环境中动态生成html 到pdf。

该功能在工作站中运行良好。在AWS Lambda 中进行测试时,我们遇到了以下异常。

错误详情:

{ "errorMessage": "spawn /var/task/node_modules/phantomjs-prebuilt/lib/phantom\bin\phantomjs.exe ENOENT", "errorType": "错误", “堆栈跟踪”: [ “exports._errnoException (util.js:870:11)”, “Process.ChildProcess._handle.onexit(内部/child_process.js:178:32)”, “onErrorNT(内部/child_process.js:344:16)”, “nextTickCallbackWith2Args (node.js:437:9)”, “process._tickDomainCallback (node.js:392:17)” ]

谁能告诉我,如何解决这个问题。

【问题讨论】:

标签: node.js amazon-web-services phantomjs aws-lambda


【解决方案1】:

因为您没有 PhantomJS 二进制文件而引发错误

/var/task/node_modules/phantomjs-prebuilt/lib/phantom\bin\phantomjs.exe

应该将 HTML 页面保存为 PDF。

但即使您将二进制文件与 Lambda 函数打包在一起,它仍然无法工作:*.exe 扩展名清楚地表明它是 Microsoft Windows 可执行文件。您需要 Linux 版本才能在 AWS Lambda 中运行。

【讨论】:

    【解决方案2】:

    您应该安装“phantomjs-prebuilt”和“html-pdf”包并部署在 *nix 机器上

    【讨论】:

      猜你喜欢
      • 2011-06-29
      • 1970-01-01
      • 1970-01-01
      • 2019-04-16
      • 2015-07-17
      • 2021-07-08
      • 2018-07-28
      • 1970-01-01
      • 2015-11-25
      相关资源
      最近更新 更多