|
本帖最后由 MakerBingo 于 2017-8-8 15:56 编辑
我们文档中给出的示例使用的是curl,对命令行程序比较陌生的开发者用起来会比较别扭,本次教程我们来学习一下如何使用Postman来调试我们的云端接口。
Postman下载地址:https://www.getpostman.com/postman
我们打算调用接口4.1.15 返回设备上报帧,下发帧记录获得带小夜灯的温湿度计这个设备从2017年7月10日 00:00:00开始到现在时间的所有上报帧记录。
第一步:获得用户token
调用云端API时,需要一个合法的用户token,我们先调用接口3.5 使用账号登录来获得用户token。
HTTP方法: POST
URL: https://uaa-openapi.hekr.me/login
HTTP Headers:
Accept: application/json
Content-Type: application/json
Body类型: raw JSON(application/json)
Body内容:
{
"pid" : "你使用的APP的pid",
"username" : "你的账号",
"password" : "你的密码",
"clientType" : "WEB"
}
使用丛云APP的用户,pid填11个0,如果是定制APP的用户,请填定制APP使用的pid。
点击Send按钮之后,获得接口应答的数据,其中access_token就是我们需要的用户token。
第二步:获得设备的devTid和ctrlKey
调用接口4.1.2 列举设备列表获得本账号下的设备列表。
HTTP方法: GET
URL: https://user-openapi.hekr.me/device
HTTP Headers:
Authorization: Bearer 你的用户token
Accept: application/json
点击Send按钮之后,获得接口应答的数据,从中查找带小夜灯的温湿度计这个设备的devTid和ctrlKey。
第三步:获得带小夜灯的温湿度计这个设备从2017年7月10日 00:00:00开始到现在时间的所有上报帧记录
调用接口4.1.15 返回设备上报帧,下发帧记录获得我们需要的数据。
HTTP方法: GET
URL: https://user-openapi.hekr.me/devSendAndRecv?devTid=你设备的devTid&ctrlKey=你设备的ctrlKey&type=devSend&startTime=2017-07-10T00%3A00%3A00.000%2B0800
其中,type的取值为devSend或appSend,devSend代表上报帧,appSend代表下发帧。
startTime直接填2017-07-10T00:00:00.000+0800是不行的,需要转换为URL编码格式,本帖最后的备注1会示例如何转换为URL编码格式。startTime中的+0800是指时区为东八区。
HTTP Headers:
Authorization: Bearer 你的用户token
Accept: application/json
点击Send按钮之后,获得接口应答的数据,其中content数组中存放的就是上报帧记录。
备注1:将2017-07-10T00:00:00.000+0800转换为URL编码格式
打开chrome浏览器,按F12键进入浏览器的调试模式,在console中输入encodeURIComponent("2017-07-10T00:00:00.000+0800"),返回的"2017-07-10T00%3A00%3A00.000%2B0800"就是URL编码格式。
备注2:使用Postman的代码生成功能
我们使用Postman调试完接口之后,可以选择生成多种语言中的调用代码,我经常使用jQuery,所以我们来生成jQuery AJAX的调用代码。
调用接口3.5 使用账号登录成功之后,点击Generate Code。
选择JavaScript->Jquery AJAX。
点击Copy to Clipboard拷贝生成的代码到剪切板,然后粘贴到你需要的地方,其中我用红色细线划掉的代码可以删掉。
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|