用户键入日期时如何显示日期?

时间:2019-03-08 07:27:29

标签: javascript date chatbot gupshup

我无法从“ http://worldtimeapi.org/api/timezone/Etc/GMT+7 ”中获取和显示日期 但是我可以使用内置功能显示日期和时间,但是我想使用api显示日期和时间。

function MessageHandler(context, event) {
  if (event.message == "date2") {
    context.simplehttp.makeGet('http://worldtimeapi.org/api/timezone/Etc/GMT+7', null, parser);
  }
}

function parser(context, event) {
  var dateJson = JSON.parse(event.getresp);
  var date = dateJson.date;
  context.sendResponse("Today's date is : " + date);
}

function MessageHandler(context, event) {
  if (event.message == "date") {
    context.sendResponse("Today's date is :" + Date());
  }
}

function EventHandler(context, event) {
  context.simpledb.roomleveldata = {};
  MessageHandler(context, event);
}

我正在使用gupshup IDE,每当输入日期date2时,我就会在机器人日志中获得这些行

  

2407:[2019-03-08T09:00:33.249] [INFO]默认-为Bot设置Bot事件=> / devnode / Displayinhthedate
  2408:[2019-03-08T09:00:33.250]默认[INFO]-为Bot设置Bot上下文=> / devnode / Displayinhthedate
  2409:[2019-03-08T09:00:33.252]默认[INFO]-成功连接到:/ devnode / Displayinhthedate / temp_db
  2410:[2019-03-08T09:00:33.285] [INFO]默认-成功获取Key => bot:global
的数据   2411:[2019-03-08T09:00:33.291] [INFO]默认-成功获取密钥的数据=> room:1234

1 个答案:

答案 0 :(得分:1)

问题在这里:

var dateJson = JSON.parse(event.getresp);
var date = dateJson.date;

您获得的日期为dateJson.date,但是JSON对象中没有带有date的密钥。

{
  "week_number": "10",
  "utc_offset": "-07:00",
  "unixtime": "1552031359",
  "timezone": "Etc/GMT+7",
  "dst_until": null,
  "dst_from": null,
  "dst": false,
  "day_of_year": 67,
  "day_of_week": 5,
  "datetime": "2019-03-08T00:49:19.371885-07:00",
  "abbreviation": "-07"
}

使用dateJson.datetime可获得的日期。 希望对您有所帮助。