上节介绍设备申请信息查询后,其实在实际使用过程中,有些用户在设备注册完成后,有时候用户还需要通过产品key值和设备名称来查询设备的信息,在这种情况下
服务端提供了相应的API接口供用户调用,从而做自己的应用;本节就对于有这种需求的情况,如何通过服务端提供接口来实现相应的功能;
接下来我们看一下具体实现;
1、脚本实现:
我们按照接口的要求,在框架页面上,提供产品的key值和设备名称这两个个输入参数框给用户输入;
产品KEY: <input type="text" name="pkey6">
设备名称: <input type="text" name="devname6">
而在实际的实现代码中,我们只需要使用get函数提取这个变量就可以了:
$pkey = $_GET["pkey6"];
$devname = $_GET["devname6"];
接着引用查询设备列表的接口:
$request = new Iot\QueryDeviceByNameRequest();
通过查看QueryDeviceByNameRequest.php文件,可以知道我们需要调用setProductKey和setDeviceName两个函数,来给服务端传送产品key值和设备名称;
$request->setProductKey($pkey);
$request->setDeviceName($devname);
调用通用的网络查询操作后,最后对返回信息进行分析;首先显示常用的requestid和success这两个通用的信息:
echo 'RequestId :'.$response->RequestId.'<br>';
echo 'Success :'.$response->Success.'<hr>';
然后依次显示要查询设备的相关信息:设备名称,secret,创建时间,设备状态:
echo '设备Id :'.$response->DeviceInfo->DeviceId.'<br>';
echo '设备名称 :'.$response->DeviceInfo->DeviceName.'<br>';
echo '设备Secret :'.$response->DeviceInfo->DeviceSecret.'<br>';
echo '创建时间 :'.$response->DeviceInfo->GmtCreate.'<br>';
echo '设备状态 :'.$response->DeviceInfo->DeviceStatus.'<br>';
2、实际测试:
打开浏览器,转到我们框架脚本页面,这里输入我们从控制台得到的产品key值和设备名称,运行提交按钮后,可以得到我们要查询设备的信息,和控制台上的信息
是完全一致的;
具体向关截图如下:
附件:
timelapse:
http://www.xunyun17.xyz/ioto/step8-QueryDeviceByNameRequest.mp4
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。