【发布时间】:2018-09-30 08:24:11
【问题描述】:
我正在使用 Alexa 技能可以使用的 Lambda 函数。我想要的只是一些简单的东西,可以读取事件并将信息发送回用户。为此,我将 npm 库 ical.js https://www.npmjs.com/package/ical 与函数 ical.fromURL(url, options, function(err, data) {} 一起使用,但问题是该函数永远不会执行。我有以下代码:
var Alexa = require("alexa-sdk");
var ical = require("ical");
var test = "This is a simple test 1";
exports.handler = function(event, context) {
var alexa = Alexa.handler(event, context);
alexa.registerHandlers(handlers);
alexa.execute();
};
var handlers = {
'LaunchRequest':function() {
console.log(test);
ical.fromURL('http://lanyrd.com/topics/nodejs/nodejs.ics', {}, function(err, data) {
test = "Nothing changes";
});
console.log(test);
test.emit(':tell', 'I am done');
}
};
这是我在 ASK CLI output on cloudwatch 中执行“询问模拟 -l en-US -t '开始日历读取'”时从可以观看的输出,因为您可以看到测试文本没有改变,如果它在函数之外(错误,数据){},它将起作用。我不认为在日历中阅读有任何问题,因为链接http://lanyrd.com/topics/nodejs/nodejs.ics 下载了一个工作 ics 文件。如果我在https://npm.runkit.com/ical 工具中尝试,该功能就会激活。所以我不确定我做错了什么。在 alexa 技能包开发中测试时,技能工作也会给出响应。
【问题讨论】:
标签: node.js amazon-web-services aws-lambda icalendar