2016-12-15 50 views
0

我们已经创建AWS Lambda函数,使用html-pdf库在nodejs4.3 eun环境中动态地生成html到pdf。AWS Lambda nodejs函数抛出异常,使用html-pdf生成html到pdf

该功能在工作站中运行良好。在AWS Lambda进行测试时,我们得到以下例外。

错误详细信息:

{ “的errorMessage”: “重生/var/task/node_modules/phantomjs-prebuilt/lib/phantom\bin\phantomjs.exe ENOENT”, “ERRORTYPE”:“错误“, ”stackTrace“:[ ”exports._errnoException(util.js:870:11)“, ”Process.ChildProcess._handle.onexit(internal/child_process.js:178:32)“, ”onErrorNT (internal/child_process.js:344:16)“, ”nextTickCallbackWith2Args(node.js:437:9)“, ”process._tickDomainCallback(node.js:392:17)“ ]

任何人都可以告诉我,如何解决这个问题。

+0

phantomJS的二进制文件没有找到它似乎 – Vaviloff

+0

看看这个例子安装 - https://github.com/lubos/aws-lambda-wkhtmltopdf –

回答

2

将引发错误,因为你没有PhantomJS二进制

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

即应该将HTML页面保存为PDF。

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