我刚刚上传了一个zip到AWS Lambda,其中包括“ref”(https://www.npmjs.com/package/ref),这是验证iOS Game Center身份验证令牌(如何从第三方node.js服务器验证Game Center用户)所需的
不幸的是,调用它会导致“无效ELF头”错误
{
“errorMessage”:“/var/task/node_modules/ref/build/Release/binding.node:无效的ELF头”,
“errorType”:“Error”,
“stackTrace”:[
“Module.load(Module.js:356:32)”,
“Function.Module._load(Module.js:312:12)”,
“Module.require(Module.js:364:17)”,
“要求(模块js:380:17)”,
“绑定(/var/task/node_modules/ref/node_modules/bindings/bindings.js:76:44)”,
“对象。<;匿名>;(/var/task/node_modules/ref/lib/ref.js:5:47)”,
“模块编译(Module.js:456:26)”,
“Object.Module._extensions..js(Module.js:474:10)”,
“Module.load(Module.js:356:32)”,
“Function.Module.\u加载(Module.js:312:12)”
]
}
这是在运行Yosemite的64位Macbook Pro上开发的,在本地运行代码没有问题。在谷歌上搜索“无效ELF头”几乎没有得到相关的结果,我真的不知道该怎么办。我最好在node.js区域问这个问题,还是在相关区域问这个问题,因为这可能是平台的问题
当您在一个体系结构上构建,然后尝试在不同的体系结构(或某些情况下的平台)上使用相同的构建插件时,就会发生这种情况
根据该页面,可能必须根据EC2上的AmazonLinux映像编译加载项,以便编译后的加载项在其Lambda服务上可用