AWS.translate 不是构造函数
AWS.translate is not a constructor
我正在 aws 网站上编写以下 lambda 函数,试图了解 aws translate 工作的基础知识,但我收到错误 AWS.translate is not a constructor
我已经查过了,这意味着翻译不在我导入的 aws-sdk 版本中,但我怎样才能做到这一点?
console.log('Loading function');
var AWS = require('aws-sdk');
var translate = new AWS.translate();
exports.handler = async (event, context) => {
var params = {
SourceLanguageCode: 'en', /* required */
TargetLanguageCode: 'es', /* required */
Text: 'Hello World', /* required */
};
translate.translateText(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
};
翻译应该是大写 T
像这样:
var translate = new AWS.Translate();
如文档所述here。
应该是AWS.Translate()
而不是AWS.translate()
。
此外,如果使用 async
,更喜欢使用 .promise()
:
的 try
/catch
版本
console.log('Loading function');
const AWS = require('aws-sdk');
const translate = new AWS.Translate({ apiVersion: '2017-07-01' }); // Fix API version (best practice)
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();
console.log(data);
} catch (err) {
console.log(err, err.stack);
}
};
我正在 aws 网站上编写以下 lambda 函数,试图了解 aws translate 工作的基础知识,但我收到错误 AWS.translate is not a constructor
我已经查过了,这意味着翻译不在我导入的 aws-sdk 版本中,但我怎样才能做到这一点?
console.log('Loading function');
var AWS = require('aws-sdk');
var translate = new AWS.translate();
exports.handler = async (event, context) => {
var params = {
SourceLanguageCode: 'en', /* required */
TargetLanguageCode: 'es', /* required */
Text: 'Hello World', /* required */
};
translate.translateText(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
};
翻译应该是大写 T
像这样:
var translate = new AWS.Translate();
如文档所述here。
应该是AWS.Translate()
而不是AWS.translate()
。
此外,如果使用 async
,更喜欢使用 .promise()
:
try
/catch
版本
console.log('Loading function');
const AWS = require('aws-sdk');
const translate = new AWS.Translate({ apiVersion: '2017-07-01' }); // Fix API version (best practice)
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();
console.log(data);
} catch (err) {
console.log(err, err.stack);
}
};