创建AWS lambda函数感觉很痛苦,当我将相同的服务从GCF移植到lambda时,我能够轻松地使用Google Cloud Function部署相同的微服务,并且处理函数发生了一些变化像aws lambda中的上下文一样,并部署了项目的.zip。它开始抛出一个未知的错误,如下所示。拉姆达功能运作良好的局部环境,Phantomjscloud不能使用aws lambda nodejs
{
"errorMessage": "callback called with Error argument, but there was a problem while retrieving one or more of its message, name, and stack"
}
,并表示在代码开始父脚本语法错误日志,但在index.js没有语法错误,我已经运行证实节点index.js,我重视index.js的代码片段在底部
START的requestId任何方式:7260c7a9-0adb-11E7-b923-aff6d9a52d2d版本:在模块“指数 $最新的语法错误':SyntaxError END RequestId:7260c7a9-0adb-11e7-b923-aff6d9a52d2d
我开始缩小的软件,是造成问题,我已删除了所有的依赖,并开始包括一个接一个,每次跑拉姆达上传的zip终于发现,导致罪魁祸首问题,它是phantomjscloud导致问题。
当我包括const phantomJsCloud = require('phantomjscloud')
它抛出该错误,甚至我的npm_modules包含phantomjscloud模块。在aws lambda和phanthomjscloud之间是否有任何已知的故障,不知道如何解决这个问题,如果你觉得我错过了任何事情,随时提问任何信息。
在这里,如果没有包括从AWS lambda函数const phantomJsCloud = require('phantomjscloud')
global.async = require('async');
global.ImageHelpers = require('./services/ImageHelpers');
global.SimpleStorage = require('./services/SimpleStorage');
global.uuid = require('uuid');
global.path = require('path');
const phantomJsCloud = require('phantomjscloud')
const aadhaarController = require('./controllers/Aadhaar')
exports.handler = (event, context) => {
// TODO implement
aadhaarController.generateAadhaarCard(event,context);
};
错误消息,当被包括phantomjscloud工作良好的代码:
只是好奇:您是否使用Lambda将API请求驱动到phantomjscloud.com? – Vaviloff
@Vaviloff,是的,我正在这样做 –
你使用的节点和npm的版本是什么? phantomjscloud需要6.x,我有一种感觉,你正在使用别的东西? – JasonS