手把手学IOT服务端API编程[17、更新设备影子]|MVP讲堂

简介: 本教程旨在介绍服务器端的API编程接口,基于php脚本的sdk,希望对物联网服务器端有编程需求的有所帮助。阿里云MVP手把手教你!有演示视频,千万别错过!

作者:阿里云MVP洵云


13节回顾:手把手学IOT服务端API编程[13、发布消息到Topic]

14节回顾:手把手学IOT服务端API编程[14、发消息给设备并同步返回响应]

15节回顾:手把手学IOT服务端API编程[15、发布广播消息]

16节回顾:手把手学IOT服务端API编程[16、查询设备影子]


上节介绍从服务端查询设备影子消息后,实际使用过程中,常常需要根据网络的状态情况,进行相应更新设备的影子,服务端的API接口也提供了相应的功能,
这一节就来介绍一下如何更新设备影子这个功能,这个接口需要提供两个参数,一个是产品的key值,一个是设备名称;
接下来我们看一下具体实现;


1、脚本实现:
我们按照接口的要求,在框架页面上,提供产品的key值和设备名称和需要更新的设备影子,这三个输入参数框给用户输入,
产品KEY:        <input type="text" name="pkey17">
设备名称:        <input type="text" name="devname17">
影子信息:        <input type="text" name="shadowmsg17">


而在实际的实现代码中,我们只需要使用get函数提取这个变量就可以了:
pkey=_GET["pkey17"];
devname=_GET["devname17"];
shadowmsg=_GET["shadowmsg17"];;


接着引用查询设备列表的接口:
$request = new Iot\UpdateDeviceShadowRequest();


通过查看UpdateDeviceShadowRequest文件,可以知道我们需要调用setProductKey和setDeviceName 及setShadowMessage 这三个函数,来从服务端传送更新设备影子的信息;这三个参数的意思分别是配置产品key,配置设备名称,配置需要更新的设备影子信息.
其中影子信息是一个json的格式字符串,其中method的值需要为update;
request>setProductKey(pkey); 
// {"method":"update","state":{"reported":{},"desired":{"window":"open"}},"metadata":{"reported":{}},"timestamp":1511860984,"version":9}
request>setDeviceName(devname); 
request>setShadowMessage(shadowmsg); 


调用通用的网络查询操作后,将操作是否成功的返回结果显示在网页上:


echo 'RequestId :'.$response->RequestId.'<br>';
echo 'Success :'.$response->Success.'<hr>';
        
2、实际测试:
打开浏览器,转到我们框架脚本页面,这里输入我们从控制台得到的产品key值和设备名称以及最新的设备影子信息,运行提交按钮后,然后转到控制台页面,查看相关的影子信息,可以看到已经被更新到最新的了:
具体向关截图如下:



timelapse:
http://www.xunyun17.xyz/ioto/step17-UpdateDeviceShadowRequest.mp4

目录
打赏
0
0
0
0
1314
分享
相关文章
Python 高级编程与实战:构建 RESTful API
本文深入探讨了使用 Python 构建 RESTful API 的方法,涵盖 Flask、Django REST Framework 和 FastAPI 三个主流框架。通过实战项目示例,详细讲解了如何处理 GET、POST 请求,并返回相应数据。学习这些技术将帮助你掌握构建高效、可靠的 Web API。
Python 高级编程与实战:深入理解 Web 开发与 API 设计
在前几篇文章中,我们探讨了 Python 的基础语法、面向对象编程、函数式编程、元编程、性能优化、调试技巧以及数据科学和机器学习。本文将深入探讨 Python 在 Web 开发和 API 设计中的应用,并通过实战项目帮助你掌握这些技术。
MASM32编程调用 API函数RtlIpv6AddressToString,windows 10 容易,Windows 7 折腾
MASM32编程调用 API函数RtlIpv6AddressToString,windows 10 容易,Windows 7 折腾
Python--API编程:IP地址翻译成实际的物理地址
Python--API编程:IP地址翻译成实际的物理地址
126 0
速卖通商品详情接口(速卖通API系列)
速卖通(AliExpress)是阿里巴巴旗下的跨境电商平台,提供丰富的商品数据。通过速卖通开放平台(AliExpress Open API),开发者可获取商品详情、订单管理等数据。主要功能包括商品搜索、商品详情、订单管理和数据报告。商品详情接口aliexpress.affiliate.productdetail.get用于获取商品标题、价格、图片等详细信息。开发者需注册账号并创建应用以获取App Key和App Secret,使用PHP等语言调用API。该接口支持多种请求参数和返回字段,方便集成到各类电商应用中。
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
66 5
以项目登录接口为例-大前端之开发postman请求接口带token的请求测试-前端开发必学之一-如果要学会联调接口而不是纯写静态前端页面-这个是必学-本文以优雅草蜻蜓Q系统API为实践来演示我们如何带token请求接口-优雅草卓伊凡
淘宝拍立淘按图搜索API接口系列的应用与数据解析
淘宝拍立淘按图搜索API接口是阿里巴巴旗下淘宝平台提供的一项基于图像识别技术的创新服务。以下是对该接口系列的应用与数据解析的详细分析
亚马逊商品详情接口(亚马逊 API 系列)
亚马逊作为全球最大的电商平台之一,提供了丰富的商品资源。开发者和电商从业者可通过亚马逊商品详情接口获取商品的描述、价格、评论、排名等数据,对市场分析、竞品研究、价格监控及业务优化具有重要价值。接口基于MWS服务,支持HTTP/HTTPS协议,需注册并获得API权限。Python示例展示了如何使用mws库调用接口获取商品详情。应用场景包括价格监控、市场调研、智能选品、用户推荐和库存管理等,助力电商运营和决策。
102 23
lazada商品详情接口 (lazada API系列)
Lazada 是东南亚知名电商平台,提供海量商品资源。通过其商品详情接口,开发者和商家可获取商品标题、价格、库存、描述、图片、用户评价等详细信息,助力市场竞争分析、商品优化及库存管理。接口采用 HTTP GET 请求,返回 JSON 格式的响应数据,支持 Python 等语言调用。应用场景包括竞品分析、价格趋势研究、用户评价分析及电商应用开发,为企业决策和用户体验提升提供有力支持。
91 21
eBay商品详情接口(ebay API系列)
eBay 商品详情接口是电商从业者、开发者和数据分析师获取商品详细信息的重要工具,涵盖标题、价格、库存、卖家信息等。使用前需在 eBay 开发者平台注册并获取 API 凭证,通过 HTTP GET 请求调用接口,返回 JSON 格式数据。Python 示例代码展示了如何发送请求并解析响应,确保合法合规使用数据。
61 12

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等