[英]Cannot find module aws-amplify, lambda function
我试着在我的lambda函数中发出一个API post请求,但在aws网站上,使用nodejs我无法导入API? 这是我正在尝试的
console.log('Loading function');
const AWS = require('aws-sdk');
const translate = new AWS.Translate({ apiVersion: '2017-07-01' });
var API = require('aws-amplify');
exports.handler = async (event, context) => {
try {
const params = {
SourceLanguageCode: 'en', /* required */
TargetLanguageCode: 'es', /* required */
Text: 'Hello World', /* required */
};
const data = await translate.translateText(params).promise();
createSite(data.TranslatedText);
} catch (err) {
console.log(err, err.stack);
}
function createSite(site) {
return API.post("sites", "/sites", {
body: site
});
}
};
我也试过导入......
我想您可能正在研究基于前端浏览器的JavaScript示例,这些示例并不总是适用于后端AWS Lambda NodeJS运行时环境。 您似乎正在尝试使用此库 ,它表示它是“前端和移动开发人员的JavaScript库”,这可能不是您想要在AWS Lambda上使用的。 您似乎还没有在AWS Lambda函数的部署中包含该库。
我建议在AWS SDK for NodeJS中使用AWS Amplify客户端 ,它自动包含在Lambda函数的运行时环境中。 你会像这样创建一个Amplify客户端:
var amplify = new AWS.Amplify();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.