JSON 来自 bluemix io​​tf 的历史 REST 调用中的响应不包含书签

JSON response in the history REST call from bluemix iotf does not contain bookmark

我尝试从 bluemix IoTF 访问历史信息。 官方文档在这里描述了 REST 调用:

https://docs.internetofthings.ibmcloud.com/swagger/v0002.html#!/Historical_Event_Retrieval/get_historian

所以结果应该是这样的:

{
 "bookmark": "string",
 "events": [
  {
   "device_id": "string",
   "device_type": "string",
   "evt_type": "string",
   "timestamp": {
     "$date": 0
   },

但它是这样的:

{
 "events": [
 {
   "device_id": "bluefish",
   "device_type": "esp8266",
  "evt_type": "tank",
  "timestamp": {
    "$date": 1447262923695
  },
  "evt": {
    "heater": "92",
    "westCloud": "70",
    "plateTemp": "27.50",
    "moon": "27",
    "centerCloud": "70",
    "waterTemp": "26.69",
    "eastCloud": "70"
  }
 },

看起来像 API 调用的 V1 版本,但我调用 V2 版本:

https://5rn7ip.internetofthings.ibmcloud.com:443/api/v0002/historian/?start=1447200000000&end=1447286399165

查询应该 return 超过 100 个条目,所以书签确实是 访问其余数据所必需的。

是IoTF有问题还是我做错了什么?

我们目前有一个与 swagger 文档不匹配的历史记录缺陷。我们将根据您的结果进一步调查。

JSON 响应末尾没有书签吗?

虽然 swagger 文档中的顺序表明书签在事件之前先出现,但您不应该依赖它,因为 JSON 对象是一组无序的 name/value 对,因此从序列化程序中排序序列化程序会有所不同,解析器不应从顺序中推断出任何内容。

http://www.json.org/

我已经在本地进行了测试,并且为包含超过 100 个条目的响应创建了书签,但书签出现在 JSON 对象的末尾。