作者:阿里云MVP洵云
10节回顾:手把手学IOT服务端API编程[10、保存设备属性]|MVP讲堂
11节回顾:手把手学IOT服务端API编程[11、查询设备属性列表]
下节链接:手把手学IOT服务端API编程[13、发布消息到Topic]
上节介绍删除设备属性后,实际使用过程中,由于设备的更新升级,往往还需要删除已经存在的设备属性信息,比如设备的温度,湿度或颜色等,服务端的API接口也提供了相应的功能,
这一节就来介绍一下删除属性的使用,这个接口需要提供三个参数,一个是产品的key值,一个是要删除属性的设备名称以及相应要删除的属性名;
接下来我们看一下具体实现;
1、脚本实现:
我们按照接口的要求,在框架页面上,提供产品的key值和设备名称这两个输入参数框给用户输入,
产品KEY: <input type="text" name="pkey12">
设备名称: <input type="text" name="devname12">
属性: <input type="text" name="propkey12">
而在实际的实现代码中,我们只需要使用get函数提取这个变量就可以了:
$pkey = $_GET["pkey12"];
$devname = $_GET["devname12"];
$propkey = $_GET["propkey12"];
接着引用查询设备列表的接口:
$request = new Iot\DeleteDevicePropRequest();
通过查看 DeleteDevicePropRequest.php文件,可以知道我们需要调用setProductKey和setDeviceName和setPropKey三个函数,来给服务端传送产品key值和设备名称以及属性值;
$request->setProductKey($pkey);
$request->setDeviceName($devname);
$request->setPropKey($propkey);
调用通用的网络查询操作后,最后对返回信息进行分析;首先显示常用的requestid和success这两个通用的信息:
echo 'RequestId :'.$response->RequestId.'<br>';
echo 'Success :'.$response->Success.'<hr>';
2、实际测试:
打开浏览器,转到我们框架脚本页面,这里输入我们从控制台得到的产品key值和要删除属性的设备名称以及属性名,运行提交按钮后,可以得到是否删除成功的信息,
和控制台上的信息是完全一致的;
具体向关截图如下:
timelapse:
http://www.xunyun17.xyz/ioto/step12-DeleteDevicePropRequest.mp4