iot api json数据包格式

原创 2018年04月17日 13:12:53

[REST api]


0417 api 设计


站点
====================================
创建一个新站点
POST /iot/api/sites/


http://localhost:8080/iot/api/sites  
[body]
{  
  "token" : "", //如果请求中不带token,系统生成唯一token  
  "name" : "REST Site",  //站点名字
  "description" : "REST site ", //站点描述  
  "metadata" : { } //可选,站点元数据 
}
  
[response]
{  
  "createdDate": "", //创建日期  
  "createdBy": "admin",  //创建者
  "deleted": false,  //是否被删除
  "token": "",  //返回token
  "name": "REST Site",  //站点名字
  "description": "",  //站点描述
  "metadata": {} //可选,站点元数据 
}  


根据token获取站点
GET /iot/api/sites/<string:token>


http://localhost:8080/iot/api/sites/<int:token>






根据token删除站点
DELETE /iot/api/sites/<string:token>


http://localhost:8080/iot/api/sites/<int:token>
[body]


[response]
{  
  "createdDate": "", //创建日期  
  "createdBy": "admin",  //创建者
  "deleted": false,  //是否被删除
  "token": "",  //token
  "name": "12",  //站点名字
  "description": "12",  //站点描述
  "metadata": {} //可选,站点元数据 
}   




租户
======================================================
创建一个新租户
POST /iot/api/tenants


curl -X GET http://127.0.0.1:5000/iot/api/tenants


curl -X GET http://127.0.0.1:5000/iot/api/tenants/test1


curl -X POST http://127.0.0.1:5000/iot/api/tenants 

-d '{"id":"test","name":"test tenant","authenticationToken":"","authorizedUserIds":["admin"],"metadata" : {}}'



curl -X DELET http://127.0.0.1:5000/iot/api/tenants






用户
======================================================
创建一个新用户
POST /iot/api/users


http://localhost:8080/iot/api/users
[body]
{
  "username": "", //用户名
  "password": "", //密码
  "firstName": "", //
  "lastName": "", //
  "status": "", //状态
  "metadata": "" //可选,元数据
}
[response]
{
  "createdDate": "", //创建日期
  "createdBy": "", //创建者
  "deleted": false, //是否被删除
  "username": "", //用户名
  "hashedPassword": "", //密码hash
  "firstName": "", //
  "lastName": "", //
  "lastLogin": "", //最近登录时间
  "status": "", //状态
  "metadata": "" //可选,元数据
}


根据username获取用户
GET /iot/api/users/<string:username>


http://127.0.0.1:8080/iot/api/users/<string:username>




根据用户名删除用户
DELETE /iot/api/users/<string:username>


http://127.0.0.1:8080/iot/api/users/<string:username>
[body]


[response]
{
  "createdDate": "",    //创建日期
  "createdBy": "",      //创建者
  "deleted": false,     //是否被删除
  "username": "",       //用户名
  "hashedPassword": "", //密码hash
  "firstName": "",      // 
  "lastName": "",       // 
  "lastLogin": "",      //最近登录时间
  "status": "",         //状态
  "metadata": ""        //可选,元数据
}
[error]
{
  "timestamp": 1523954254707,
  "status": 404,
  "error": "Not Found",
  "message": "InvalidUsername:Username does not exist.",
  "path": "/iot/api/users/111"
}


设备
========================================================
创建一个新设备
POST /iot/api/devices/


http://localhost:8080/iot/api/devices 
[body]
{  
  "hardwareId" : "test1234567",  //设备ID
  "siteToken" : "", //站点token   
  "comments" : "Equipment tracker."  //
  "status": "", //状态
  "metadata": "object" //
}
[response]
{  
  "createdDate": "", //创建日期 
  "createdBy": "admin",  //创建者
  "deleted": false,  //是否被删除
  "hardwareId": "test1234567",  //设备ID
  "siteToken": "",  //token
  "comments": "Equipment tracker.",  //注释
  "metadata": {}  //元数据
}  


根据设备ID获取设备信息
GET /iot/api/devices/<int:hardwareId>


http://127.0.0.1:8080/iot/api/devices/<int:hardwareId>






根据设备ID删除设备
DELETE /iot/api/devices/<int:hardwareId>


http://127.0.0.1:8080/iot/api/devices/<int:hardwareId>
[body]


[response]
{
  "createdDate": "",                    //创建日期
  "createdBy": "admin",                 //创建者
  "deleted": false,                     //
  "hardwareId": "test1234567",          //
  "siteToken": "",                      //            
  "comments": "Equipment tracker.",     //
  "metadata": {}                        //
}




事件
============================================================
存储设备数据###用户禁止调用
POST /iot/api/devices/<int:hardwareId>/events/


http://127.0.0.1:8080/iot/api/devices/<int:hardwareId>/events/


[body]
{
    "hardwareId" : "test1234567",        //设备ID
    "eventType" : "Measurements",      //事件类型
    "siteToken" : "bb105f8d-3150-41f5-b9d1-db04965668d3",    //token
    "eventDate" : ISODate("2018-03-22T05:45:40.499Z"), //
    "receivedDate" : ISODate("2018-03-22T07:40:56.884Z"), //
    "metadata" : { 
    
    },  
    "measurements" : [                  //数据  
        {
            "name" : "engine.temperature",
            "value" : 166.08
        },
        {
            "name" : "fuel.level",
            "value" : 82.94
        }
    ]   
}
[response]
....




获取设备数据
GET /iot/api/devices/<int:hardwareId>/events/?resum=1


http://127.0.0.1:8080/iot/api/devices/<int:hardwareId>/events/?resum=1


[response]


{
"hardwareId" : "test1234567", //设备ID
    "eventType" : "Measurements", //事件类型
    "siteToken" : "bb105f8d-3150-41f5-b9d1-db04965668d3", //token
    "eventDate" : ISODate("2018-03-22T05:45:40.499Z"),
    "receivedDate" : ISODate("2018-03-22T07:40:56.884Z"),
    "metadata" : { 
    
    },  
    "measurements" : [ //数据 
        {
            "name" : "engine.temperature",
            "value" : 166.08
        },
        {
            "name" : "fuel.level",
            "value" : 82.94
        }
    ]   

}


资料:
http://www.jikexueyuan.com/course/837.html
http://www.cnblogs.com/vovlie/p/4178077.html
https://blog.openshift.com/rest-web-services-with-python-mongodb-and-spatial-data-in-the-cloud-part-2/


版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/orchidofocean/article/details/79973345

iot mqtt json数据包格式

iot json数据包格式sub:{     &quot;hardwareId&quot;: &quot;(unique hardware id)&quot;,     &quot;type&quot...
  • orchidofocean
  • orchidofocean
  • 2018-04-10 10:46:29
  • 17

NB-IoT使用笔记(2)实现UDP访问DNS服务获取IP地址(2)

背景书接上回,第一版采用了python方法实现了UDP方式请求DNS服务,然而在使用单片机时是用cC语言实现的,并没有python语言那么高的灵活性,考虑到此,今天使用C语言重新实现这个功能。本次实验...
  • a1668659995
  • a1668659995
  • 2017-10-24 21:37:10
  • 319

NB-IoT使用笔记(3)在linux下使用python搭建UDP服务

背景NB-IoT可以通过UDP服务访问NB卡绑定的IP地址。关于绑定,目前因为NB-IoT出来时间不长,能绑定几个IP地址以及绑定的IP能否更改一直是一个谜一样的问题,我从不同的客服那里了解的信息还没...
  • a1668659995
  • a1668659995
  • 2017-10-26 21:53:26
  • 588

JSON数据格式操作(Java语言)

基础介绍 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。它基于ECMA262语言规范(1999-12第三版)中...
  • ma_hoking
  • ma_hoking
  • 2014-05-20 12:43:05
  • 2778

AWS IoT 限制

http://docs.aws.amazon.com/zh_cn/general/latest/gr/aws_service_limits.html AWS IoT 限制 ...
  • whatnamecaniuse
  • whatnamecaniuse
  • 2017-09-22 18:39:39
  • 609

关于Windows10 IOT core的蓝牙(Bluetooth)

window10 iot core无法连接蓝牙音箱以及蓝牙耳机来取代有源音箱
  • a201577F0546
  • a201577F0546
  • 2017-07-09 19:38:43
  • 623

处理IOT中纷繁的数据与消息_从未如此简单

面临爆炸式增长,车联网业务平台问题重重 服务于大量的客户、合作伙伴和生态链的其他企业,用户诉求来源复杂; 需求变化快,不可控因素多; 各种营销手段带来突发的业务访问; 系统越来越复杂,模块越来越多; ...
  • Gamay
  • Gamay
  • 2017-06-28 13:27:40
  • 786

json解析几种格式

1、直接一个数组  前面为jsondata,下面是解析方法: // [{"devid":"1234567800","latitude":"29.4963","longitude":"11...
  • qq_25184739
  • qq_25184739
  • 2015-11-13 01:57:32
  • 1357

AWS IOT 中文开发者文档

  • 2017年11月10日 10:22
  • 6.74MB
  • 下载
收藏助手
不良信息举报
您举报文章:iot api json数据包格式
举报原因:
原因补充:

(最多只允许输入30个字)