0
我正在开展一个学校项目,并试图从URL中获取数据以便与我的Alexa技能集成。我绝对是一个NodeJS初学者,并没有很多HTML或JSON的背景知识。针对亚马逊Alexa技巧的NodeJS问题
我的学校有一个“API”我们的运输系统在这里:https://prtstatus.wvu.edu/api/ 样本情况下带有时间戳是在这里:https://prtstatus.wvu.edu/api/1501906657/?format=json
在我的代码,我试图让解析为JSON字符串从从URL中获取,但遇到了格式化问题,以便字符串的“message:”部分将被传递。这里是我的AWS LAMBDA我的意图代码:
'getPRTStatus': function() {
var date = Math.round(new Date().getTime()/1000);
var http = require('http');
var https = require('https');
var options = {
host: 'https://prtstatus.wvu.edu',
path: '/api/'+date+'/?format=json'
};
var object;
var callback = function(response) {
var str = '';
//another chunk of data has been recieved, so append it to `str`
response.on('data', function (chunk) {
str += chunk;
});
//the whole response has been recieved, so we just print it out here
response.on('end', function() {
console.log(str);
object = JSON.parse(str);
});
}
https.request(options, callback).end();
this.attributes.speechOutput = this.t(object.message);
this.attributes.repromptSpeech = this.t(object.message);
this.emit(':ask', this.attributes.speechOutput, this.attributes.repromptSpeech);
},