【发布时间】:2019-05-08 05:03:01
【问题描述】:
我从 JSON 文件中获取结果,我想在轮播中显示它, 我该怎么做?
代码如下:
var req = http.request(options, function (res) {
console.log('STATUS: ' + res.statusCode);
if (res.statusCode !== 201) {
session.send("Sorry, service is not reachable at the moment, please try again later");
}
//session.send(res.statusCode.toString());
var chunks = [];
res.on("data", function (chunk) {
chunks.push(chunk);
var json = chunk.toString();
var graph = JSON.parse(json);
var attachmentList = [];
for (var i = 0; i < graph.clauses.length; i++) {
var obj = graph.clauses[i];
console.log(obj);
var clause_id;
var clause_text;
for (var key in obj) {
clause_id = key;
clause_text = obj[key].toString();
// session.send(clause_id+"<br>"+clause_text);
}
let card = new botbuilder_1.HeroCard(session)
.title(clause_id)
.subtitle(clause_text)
.buttons([botbuilder_1.CardAction.imBack(session, 'Mark as Relevant', 'Mark as Relevant')]);
let msg = new botbuilder_1.Message(session);
msg.attachmentLayout(botbuilder_1.AttachmentLayout.carousel);
msg.attachments([card]);
session.send(msg);
// session.endDialog(msg);
}
});
});
结果截图如下:
【问题讨论】:
-
让我看看我是否明白。您将在 HTTP 请求的结果中获取该 JSON,并且您希望将条款数组中的每个对象转换为卡片,然后在轮播中显示所有这些卡片。对吗?
-
请提供您用于生成轮播的代码,以便我们查看您尝试过的内容以及需要帮助的内容。
-
@KyleDelaney 我已成功从 JSON 中检索,现在如何将所有 HeroCard 合并为轮播?我更新了截图和源代码
-
var json=chunk.toString(); var graph = JSON.parse(json);您如何假设您的块是有效的 json?
标签: javascript node.js botframework chunks