说明
权限
- 匿 名:URL第二位是 _
/auth/_/captcha
- 管理员:URL第二位是 0
/device/0/add
- 一 级:URL第二位是 1
/user/1/add
- 二 级:其他
/device/command
除匿名访问外,其他均要认证
方式一:头信息 Authorization
方式二:cookie,正式上线会取消
1.获取验证码
接口调用
GET
http://www.faniot.cn:8080/auth/_/captcha
返回参数
字段 | 说明 | 类型 | 是否必有 |
---|---|---|---|
captcha | 验证码键值图片Base64 | String | 是 |
key | 验证码键值 | String | 是 |
发送示例
http://www.faniot.cn:8080/auth/_/captcha
接收示例
{
"code": 0,
"msg": "成功",
"data": {
"captcha": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKUAAAAtCAIAAABAqjw4AAADCUlEQVR42u3bzW6DMAwAYD/0jt1lt0m7bNoeYNMeYG9IKyEhRojj/zhpEadCW8iHg3ECLMzl8+V7W/GttX3Ey/Plsq21fb4+Xtd1sV5+fv+2dRl2AYG38ppw9S7hrewn99Y0k1OIs7zN7ffeHv1H//jWNFAqbxP7Q3w73TWQ5en9rbZa9ueys0rrLb7Zn/bnfukCUZoLD/R2mc/b8P7tCk/3bpIDKxoe3s18zUO9xrn+F4scuB1gL2yi934f2yuj5r3//HB3t4LHCUt1y+cxymmwvOnt0lT0wz71LqXLfcLSOmKIg+zXa+cgfhKjpM04pCt26Y1jn6Z1keTG3us5lNU0k568Zo9YemMjwM2+PSyZ9/Vezqqn5vfsfQPVOAOwm5aszM4Jvps36+atzNdisEtvw2TeMK3z9aZcAYbkJWoYtpO3IbxXfi5QtyI/uEZia7xZ4yti+J7egkdwyhmWwJEVGK6fcjyNri6pr+1TYquRRPMQ74gd7y2rrTa/DvRHI+51YB7iHbHzexNjBgSdjF9VFf9lw/gWdF1DxPdtPT217UN5fc22qsrN1+LJk3hTroBTnfVDVb6Gh7urtz4/n8ablbXZ5Oelesx4aK/n74TeLvUWIl7k/LX89bXI+Y1Nct58xaaispYuGx/rUj/PFtxa72YvTVltk8FU42MTepetr8Hm1nDK/fOMfyvHx1J7l927fkyMVbrZdqtZnu7gOr9FNv49kvfiNkmDyH/bhEOuXw+bv8aa3zJqfr7o3jtRPtPvFWuH4Ucum79motj5+Tv41QqEVrDJ/PnbO6ybio7zkXup4/18pHr8wnrZgDQeqmmXmAbV/Mvo6obY/+Lb/AXaPOTTq9N/B5o5c1pvwbHN0cNrFmq9JWdLyQ7pntUhrKWcmlhzPHeoDsljMU/OOMf19PCOUM9zhOm8a9Ov8K/n75mTwGeMb7x+gmwdoq/qm/9C5mjgbh2FPD7otfNTR7/lZzu2APj1xyF/lntXl6Or+nE+8kxFlYCWHfHxHeJPI1UdVJk9DUd+BQaisxhRmWe1AAAAAElFTkSuQmCC",
"key": "1040e516-42e7-4c4c-80ac-c4ce3411e521"
}
}
2.登录
接口调用
POST
http://www.faniot.cn:8080/auth/_/login
发送参数
字段 | 说明 | 类型 | 是否必填 |
---|---|---|---|
code | 用户名 | String | 是 |
password | 密码 | String | 是 |
key | 验证码键值 | String | 是 |
captcha | 验证码 | String | 是(iot默认通过) |
返回参数
字段 | 说明 | 类型 | 是否必有 |
---|---|---|---|
access_token | 令牌 | String | 是 |
非匿名访问头信息添加 Authorization access_token
发送示例
{
"code": "admin",
"password": "123456",
"key": "1040e516-42e7-4c4c-80ac-c4ce3411e521",
"captcha": "3kb3"
}
接收示例
{
"code": 0,
"msg": "成功",
"data": {
"access_token": "8bb53053-1f15-4a60-a2c3-9f7c6d9e3f10"
}
}
3.登出
接口调用
GET
http://www.faniot.cn:8080/auth/_/logout
接收示例
{
"code": 0,
"msg": "成功",
"data": null
}
4.查询用户拥有设备
接口调用
GET
http://www.faniot.cn:8080/auth/_/logout
发送参数
字段 | 说明 | 类型 | 是否必填 |
---|---|---|---|
code | 用户名 | String | 是 |
num | 第几页 | Integer | 否(默认1) |
size | 每页数量 | Integer | 否(默认10) |
接收参数
字段 | 说明 | 类型 | 是否必有 |
---|---|---|---|
total | 总数 | Integer | 是 |
num | 第几页 | Integer | 是 |
size | 每页数量 | Integer | 是 |
count | 总页数 | Integer | 是 |
list | 数据列表(见下) | Json | 是 |
数据列表
字段 | 说明 | 类型 | 是否必有 |
---|---|---|---|
sn | 设备编码 | String | 是 |
name | 设备名称 | String | 是 |
发送示例
http://www.faniot.cn:8080/user/query/devices?code=admin
接收示例
{
"code": 0,
"msg": "成功",
"data": {
"total": 1,
"num": 1,
"size": 10,
"count": 1,
"list": [
{
"sn": "863488059633118",
"name": "APF测试"
}
]
}
}
5.发送指令
接口调用
POST
http://www.faniot.cn:8080/device/command
发送参数
字段 | 说明 | 类型 | 是否必填 |
---|---|---|---|
sn | 设备编号 | String | 是 |
lists | 指令 | Json | 是 |
接收返回成功,不代表真实成功,一般还要主动查询结果
发送示例
{
"sn": "863488059633118",
"lists": [
[1,4,5],
[4,53,78],
[2,33,444]
]
}
[2,33,444]数组第一个代表字节数,后面的23、444发到设备占2字节
示例发送04 05 00000035 0000004E 0021 01BC
到设备
接收示例
{
"code": 0,
"msg": "成功",
"data": null
}